栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

保存多对多字段Django表单

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

保存多对多字段Django表单

更新的答案

问题出在

save
方法上。您将实例保存为,
commit=False
但实例保存时为,
if commit:
因此现在不保存。

只是注释掉了

if commit:
,它将被很好地保存。

def save(self, commit=True):    # Get the unsaved Pizza instance    instance = forms.ModelForm.save(self, False)    # Prepare a 'save_m2m' method for the form,    old_save_m2m = self.save_m2m    def save_m2m():        old_save_m2m()        # This is where we actually link the pizza with toppings        instance.course_set.clear()        for course in self.cleaned_data['courses']: instance.course_set.add(course)    self.save_m2m = save_m2m    # Do we need to save all changes now?    # Just like this    # if commit:    instance.save()    self.save_m2m()    return instance


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/625359.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号