python – 在Google App Engine中的ModelForm中设置父级
作者:互联网
我想在通过ModelForm创建的实体中创建实体组关系.
如何传递父实例并在ModelForm中设置parent =属性?
解决方法:
我有兴趣看看你是否能找到解决这个问题的好办法.我自己的解决方案,远非优雅,是这样做的:
book = models.Book(title='Foo')
chapter = models.Chapter(parent=book, title='dummy')
form = forms.ChapterForm(request.POST, request.FILES, instance=chapter)
基本上,我首先使用正确的父关系创建一个虚拟对象(在本例中为章节),然后将其作为实例参数传递给表单的构造函数.表单将覆盖我用来创建虚拟对象的一次性数据和请求中给出的数据.最后,为了得到真正的子对象,我做了这样的事情:
if form.is_valid():
chapter = form.save()
# Now chapter.parent() == book
标签:python,django,google-app-engine,app-engine-patch 来源: https://codeday.me/bug/20190627/1300991.html