Advertisement
Guest User

Untitled

a guest
Jun 26th, 2019
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.29 KB | None | 0 0
  1. <form role="form" action="{% url 'productos:crear_producto' %}" method="post" enctype="multipart/form-data" autocomplete="off">
  2. ...
  3. </form>
  4.  
  5. class CrearProducto(SuccessMessageMixin,CreateView):
  6.  
  7. model = Producto
  8. form_class = ProductoForm
  9. template_name = "administrador/crear_producto.html"
  10. success_url = reverse_lazy("productos:administrar_productos")
  11. def get_context_data(self, **kwargs):
  12. from django.conf import settings
  13. CODIGO_INICIAL_AUTOMATICO = settings.CODIGO_INICIAL_AUTOMATICO
  14. try:
  15. producto = Producto.objects.latest('id')
  16. codigo = int(producto.cod_auxiliar) + 1
  17. except Producto.DoesNotExist:
  18. codigo = CODIGO_INICIAL_AUTOMATICO
  19.  
  20. context = super(CrearProducto, self).get_context_data(**kwargs)
  21. context['codigo_producto'] = str(codigo).zfill(13)
  22. return context
  23. def post(self, request, *args, **kwargs):
  24. if self.request.POST:
  25. form = ProductoForm(request.POST)
  26. self.object = form.save()
  27. producto_actual = Producto.objects.get(nombre=self.object.nombre)
  28. movimiento = Movimientos(
  29. tipo = 1,
  30. proveedor = self.object.proveedor,
  31. producto = self.object,
  32. bodega = self.object.bodega,
  33. vunitario_promedio = float(self.object.precio),
  34. responsable = request.user,
  35. vunitario_compra = float(self.object.precio),
  36. cant_ingreso = self.object.cantidad,
  37. tot_ingreso = float(self.object.cantidad) * float(self.object.precio),
  38. tot_saldo = float(self.object.cantidad) * float(self.object.precio),
  39. cant_saldo = self.object.cantidad,
  40. )
  41. movimiento.save()
  42.  
  43. messages.add_message(request, messages.SUCCESS, 'Registro creado con éxito')
  44. return redirect('productos:administrar_productos')
  45.  
  46. class CrearProducto(SuccessMessageMixin,CreateView):
  47.  
  48. model = Producto
  49. form_class = ProductoForm
  50. template_name = "administrador/crear_producto.html"
  51. success_url = reverse_lazy("productos:administrar_productos")
  52.  
  53. nombre = models.CharField(max_length=300)
  54. imagen = models.ImageField(upload_to='productos/', null=True, blank=True)
  55. ..
  56. ...
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement