[英]Django CreateView with a ManyToMany field?
我已經做了幾天的工作,我在這里看到了一些類似的帖子,但我仍然無法獲得它!
我將發布一個小片段。
我有一個食譜 model,有很多字段,但我會發布我所指的那個。
ingredients = models.ManyToManyField('recipes.Ingredient', related_name='in_recipes')
然后我當然有一個Ingredient
model,帶有名稱、描述等。
我希望能夠擁有一個 CreateView,我可以在其中將任意數量的成分添加到單個食譜中。
我只能列出我的數據庫中已經存在的成分。 我正在尋找一個包含成分表和字段的單一配方表。
任何幫助將不勝感激!
成分 = models.ManyToManyField(成分,related_name='in_recipes')
確保僅將多對多關系放在成分 model 或食譜 model 中,而不是在兩種模型中!
並且建議使用有關創建視圖的任何片段來更多地了解該問題。
保存食譜后,您可以保存配料。
class RecipeCreateView(CreateView):
def save_ingredients(self, recipe):
ingredients_names = self.request.POST.getlist('ingredients_names')
for name in ingredients_names:
....
def post(self, request, *args, **kwargs):
response = super().post(request, *args, **kwargs)
self.save_ingredients(self.object)
return response
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.