[英]Creating a Django Model for a recipe #2
这是Creating a Django Model for a recipe的后续问题。 我可以 select 为一个食谱添加多种配料,但我的代码只允许选择一个与所有所选配料相关联的一般数量。 例如:(BLT 食谱)我可以 select 培根、生菜和番茄,但我不能为每一种(即培根 (1)、生菜 (1)、番茄 (2))提供不同的数量。
class Recipe(models.Model):
'''A recipe class to input new recipes'''
recipe = models.CharField(max_length=50)
ingredient = models.ManyToManyField(Ingredient)
quantity = models.CharField(max_length=1)
cuisine = models.ForeignKey(Cuisine, null=True, on_delete=models.SET_NULL)
def __str__(self):
return self.recipe
class Ingredient(models.Model):
'''All ingredients for any recipe or individual selection'''
ingredient = models.CharField(max_length=50)
department = models.ForeignKey(Department, null=True, on_delete=models.SET_NULL)
def __str__(self):
return self.ingredient
我的代码只允许与所有所选成分相关联的一个通用数量选择
class Recipe(models.Model):
'''A recipe class to input new recipes'''
recipe = models.CharField(max_length=50)
ingredient = models.ManyToManyField(Ingredient)
quantity = models.CharField(max_length=1)
cuisine = models.ForeignKey(Cuisine, null=True, on_delete=models.SET_NULL)
def __str__(self):
return self.recipe
与您用英语描述的相反,您将数量与食谱相关联,而不是与成分相关联。 由于每个食谱只有一个数量没有意义,因此quantity
不属于Recipe
class。相反, quantity
应该在Ingredient
class 中,因为每种配料都有数量。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.