我正在创建两个模型:原料配方和配方。这是每一项的代码:原料配方:from django.db import modelsclass FeedstockFormulas(models.Model): ratio = models.FloatField() feedstock = models.OneToOneField("dashboard.Feedstock", on_delete=models.CASCADE, default="0") formulas = models.ForeignKey("dashboard.Formulas", on_delete=models.CASCADE, default="")公式:from django.db import modelsclass Formulas(models.Model): name = models.CharField(max_length=100) cost = models.FloatField() weight = models.FloatField()如何获取配方中的所有原料配方?
3 回答
qq_笑_17
TA贡献1818条经验 获得超7个赞
你可以这样做
首先参考你想要的公式,比如
f = Formula.objects.get(name = <formula name>)
然后你用它来获取原料配方
fsf = FeedstockFormulas.objects.filter(formulas = f)
翻翻过去那场雪
TA贡献2065条经验 获得超13个赞
FeedstockFormulas您可以通过related_name您的字段访问formulas,该字段默认为feedstockformulas_set您的情况。
例如:
formula = Formulas.objects.first()
print(formula.feedstockformulas_set.all().feedstock)
PIPIONE
TA贡献1829条经验 获得超9个赞
您应该将“相关名称”添加到 FeedstockFormulas 的公式字段中。
像这样:
formulas = models.ForeignKey("dashboard.Formulas", related_name="feed_stock_formulas",on_delete=models.CASCADE, default="")
Django 在ForeignKey 上使用反向关系,您可以通过编写以下内容来访问属于公式一部分的所有FeedstockFormula:
Formulas.feed_stock_formulas
添加回答
举报
0/150
提交
取消