This is the url:
url(r'validar/celda', SGregorio_views.validarcelda, name='validarcelda'),
This is the view to validate:
def validarcelda(request):
error = ''
success = False
if request.method == 'POST':
celda = request.POST.get('celda', None)
if not celda:
error = _('La celda ya esta ocupada')
elif User.objects.filter(celda__exact=celda).exists():
error = _('La celda ya esta ocupada')
else:
success = True
ajax_vars = {'success': success, 'error': error}
return HttpResponse(json.dumps(ajax_vars),content_type='application/javascript')
This is the view to add:
def inventarioingresoe(request):
empaque = Empaque.objects.all()
if request.method == "POST":
variedad = request.POST["variedad"]
empaque = request.POST["empaque"]
grado = request.POST["grado"]
comercializadora = request.POST["comercializadora"]
ramos = request.POST["ramos"]
unidades = request.POST["unidades"]
celda = request.POST["celda"]
nuevoingreso = Empaque.objects.create( fecha = fecha,
hora = hora,
variedad = variedad,
empaque = empaque,
grado = grado,
comercializadora = comercializadora,
ramos = ramos,
unidades = unidades,
total = int(unidades) * int(ramos),
celda = celda)
return redirect('empaque')
return render(request,"inventario/empaque/ingresoe.html", {})
This is the template:
<div class="modal-header">
<button type="reset" data-dismiss="modal" class="cerrarmodal">
<i class="fa fa-close"> </i>
</button>
<h4> <span><i class="fa fa-plus"></i></span>Ingresar caja</h4>
</div>
<div class="modal-body">
<div class="container-fluid">
<form class="formatolinea" method="post" name="empaque" id="empaque" action="{% url 'empaqueingreso' %}" onSubmit="return iempaque();">
{% csrf_token %}
<label>Variedad</label>
<select name="variedad" value="{{variedad}}">
<option>Seleccione la varieda</option>
<option>Freedom</option>
<option>Vendela</option>
</select>
<div class="mensaje" id="mensajev" style='display: none;'>Debe seleccionar la variedad</div>
<label>Grado</label>
<select name="grado" value='{{grado}}'>
<option>Seleccione el grado</option>
<option value="40">40</option>
<option value="50">50</option>
<option value="60">60</option>
<option value="70">70</option>
</select>
<div name="mensajeg" class="mensaje" id="mensajeg" style='display: none;'>Debe seleccionar el grado</div>
<label>Tipo de empaque</label>
<select name="empaque" value='{{empaque}}'>
<option>Seleccione el empaque</option>
<option>Tabaco</option>
<option>Full</option>
<option>Cuarto</option>
<option>Tercio</option>
<option>Octavos</option>
</select>
<div name="mensajee" class="mensaje" id="mensajee" style='display: none;'>Debe seleccionar el empaque</div>
<label>Cantidad de ramos</label>
<input type="number" name="ramos" value="{{ramos}}" placeholder="Digite los ramos">
<div name="mensajer" class="mensaje" id="mensajer" style='display: none;'>Debe digitar el numero de ramos</div>
<label>Unidades por ramo</label>
<select name="unidades" onChange="otro(this.value);">
<option>Unidades por ramo</option>
<option>20</option>
<option>25</option>
<option value="Otro" id="otro">Otro</option>
</select>
<div name="mensajeu" class="mensaje" id="mensajeu" style='display: none;'>Debe seleccionar las unidades por ramo</div>
<label id="digite" style=' display: none; '>Digite la cantidad</label>
<input type="number" name="tabaco" id="unidad" style=' display: none; ' onChange="cambiar(this.value);">
<label>Comercializadora</label>
<select name="comercializadora" value="{{comercializadora}}">
<option>Seleccione la comercializadora</option>
<option>QU</option>
<option>GO</option>
<option>FX</option>
<option>BG</option>
</select>
<div name="mensajec" class="mensaje" id="mensajec" style='display: none;'>Debe seleccionar la comercializadora</div>
<label>Numero de celda</label>
<input type="number" name="celda">
<div name="mensajecd" class="mensaje" id="mensajecd" style='display: none;'>Debe digitar el numero de celda</div>
<script type="text/javascript">
$.ajax({
type: "POST",
url: "{% url 'validarcelda' %}",
data: {'celda': $('#celda').val(), 'csrfmiddlewaretoken': '{{csrf_token}}'},
dataType: "text",
success: function(response) {
var response = $.parseJSON(response);
if (response.success){
return true;
}
else{
alert(response.error);
event.preventDefault();
return false
}
},
error: function(rs, e) {
alert(rs.responseText);
}
});
</script>
<button class="guardar" type="submit" onclick="iempaque()"> <i class="fa fa-save"></i> Guardar</button>
<button class="cancelar" type="reset" data-dismiss="modal"> <i class="fa fa-close"></i> Cancelar</button>
</form>
</div>