Hi, i hope you can help me, im trying to make a django post form without
reloading the page using ajax, but im getting error 500 when submit, can
you help me to fix this, this is my code:
*models.py*
class ProductoConcepto(models.Model):
producto = models.ForeignKey(Producto)
orden = models.ForeignKey(Cobro)
cantidad = models.FloatField()
*urls.py*
from django.conf.urls import patterns, include, url
from django.contrib import admin
from cobro import views
urlpatterns = [
url(r'^cobro/agregar_concepto/$', views.addconcept_product,
name='add_concepto'),
]
*views.py*
def addconcept_product(request):
if request.method == 'POST':
if form.is_valid():
producto = request.POST['producto']
orden = request.POST['orden']
cantidad = request.POST['cantidad']
ProductoConcepto.objects.create(producto=producto, orden=orden,
cantidad=cantidad)
return HttpResponse('')
*template*
<div class="modal inmodal fade" id="myModal1" tabindex="-1"
role="dialog" aria-hidden="true">
<div class="modal-dialog modal-m">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close"
data-dismiss="modal">
<span aria-hidden="true">×</span>
<span class="sr-only">Cerrar</span>
</button>
<h3 class="modal-title">Agregar nuevo concepto</h3>
</div>
<div class="modal-body">
<p>Datos de concepto a agregar:</p>
<div class="doctorformstyle">
<form id='formulario-modal' method='post'
enctype='multipart/form-data'>
{% csrf_token %}
<ul>{{form2.as_p}}</ul>
<!-- rendered form2 fields: <select id="id_producto"
name="producto"><option value="1"
selected="selected">object</option></select> -->
<!-- form2 fields: <select id="id_orden" name="orden">
<option value="1" selected="selected">object</option>
</select> -->
<!-- form2 fields: <input id="id_cantidad" name="cantidad" step="any"
type="number"> -->
<div class="row align-center">
<input type='submit' name="save1"
value='Guardar' class="btn btn-w-m btn-primary"/>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript">
$(document).on('submit', '#formulario-modal', function(e){
e.preventDefault();
$.ajax ({
type: 'POST',
url: '{% url 'add_concepto' %}',
data: {
producto: $('#id_producto').val(),
orden: $('#id_orden').val(),
cantidad: $('#id_cantidad').val(),
csrfmiddlewaretoken: '{{ csrf_token }}',
},
sucess:function(){
alert("OK");
}
})
});
</script>
this is the error: POST http://127.0.0.1:8000/cobro/agregar_concepto/ 500
(Internal Server Error)
--
You received this message because you are subscribed to the Google Groups
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-users/f17e5677-4401-41e4-a928-326a23b3c6fa%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.