En Django tengo 2 modelos. Uno llamado Caja y otro llamado Producto. Una Caja puede tener muchos productos diferentes y con distintas cantidades de cada producto. Por ejemplo box1 puede tener 1 productoA y 2 productoB.
Mi modelo de caja
class Box(models.Model): boxName = models.CharField(max_length=255, blank = False) product = models.ManyToManyField(Product) def __str__(self): return self.boxNameMi modelo de producto
class Product(models.Model): productName = models.CharField(max_length=200) productDescription = models.TextField(blank=True) productPrice = models.DecimalField(max_digits=9, decimal_places=0, default=0) class Meta: db_table = 'products' ordering = ['-productName'] def __str__(self): return self.productName¿Cómo configuro este modelo que me permite seleccionar la cantidad de productos al crear el objeto de caja?
Defina un modelo intermediario que contenga producto + cantidad.
class Box(models.Model): boxName = models.CharField(max_length=255, blank = False) product_set = models.ManyToManyField(ProductSet) def __str__(self): return self.boxName class ProductSet(models.Model): quantity = models.PositiveIntegerField() product = models.ForeignKey(Product, on_delete = models.PROTECT) class Product(models.Model): productName = models.CharField(max_length=200) productDescription = models.TextField(blank=True) productPrice = models.DecimalField(max_digits=9, decimal_places=0, default=0) class Meta: db_table = 'products' ordering = ['-productName'] def __str__(self): return self.productName