Ich möchte ein Ticket (Modell Ventas) mit seinen Produkten (Modell Venta_detalle)Wie 2 bildet mit Django in einer Ansicht speichern
Meine Modelle sind erstellen:
class Ventas(models.Model):
metodo_pago = models.CharField(max_length=80)
fecha = models.DateTimeField(auto_now_add=True,auto_now=False)
cajero = models.ForeignKey('auth.user')
cliente = models.ForeignKey(Clientes,blank=True,null=True)
total = models.DecimalField(max_digits=10,decimal_places=2)
class Venta_detalle(models.Model):
venta = models.ForeignKey(Ventas)
producto = models.ForeignKey(Productos)
cantidad = models.IntegerField()
def __unicode__(self):
return self.producto.descripcion
class Productos(models.Model):
codigo = models.CharField(max_length=80)
descripcion = models.TextField()
precio_compra = models.DecimalField(max_digits=10,decimal_places=2)
precio_venta = models.DecimalField(max_digits=10,decimal_places=2)
existencia = models.IntegerField()
impuesto = models.ForeignKey(Impuestos,blank=True,null=True)
imagen = models.ImageField(upload_to='productos')
def __unicode__(self):
return self.descripcion
ich erstellen müssen Viele Venta_detalle Objekte mit einem Produkt, Menge und Ventas ID in der gleichen Vorlage.
Zum Beispiel: Wenn wir eine ObjectInline (admin.TabularInline) im Admin-Panel hinzufügen, um zwei Modelle mit Fremdschlüssel anzuzeigen.
Meine Ansicht nur haben:
def VentasCrear(request):
if request.method == "POST":
form = VentaForm(request.POST)
if form.is_valid():
venta = form.save(commit=False)
venta.cajero = request.user
venta.save()
else:
form = VentaForm()
return render(request, 'ventas.html', {'form': form})