python-如何在Django中保存内联表单集模型?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python-如何在Django中保存内联表单集模型?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1715字,纯文字阅读大概需要3分钟。
内容图文
![python-如何在Django中保存内联表单集模型?](/upload/InfoBanner/zyjiaocheng/670/f6f2a6d957064c56b2d5f642c89b896e.jpg)
表单集具有.save()方法,documentation表示要保存在如下视图中:
if request.method == "POST":
formset = BookInlineFormSet(request.POST, request.FILES, instance=author)
if formset.is_valid():
formset.save()
# Do something.
else:
formset = BookInlineFormSet(instance=author)
我遵循此方法,并且在创建父级时可以使用,但是在Django中保存现有模型时出现异常.父级实际上已保存到数据库,并且在保存相关模型时会发生异常.
KeyError at /bcdetails/NewProds/1/
None
Request Method: POST
Request URL: http://rdif.local/bcdetails/NewProds/1/
Exception Type: KeyError
Exception Value:
None
Exception Location: /usr/lib/python2.5/site-packages/django/forms/models.py in save_existing_objects, line 403
Python Executable: /usr/bin/python
Python Version: 2.5.2
Python Path: ['/usr/lib/python2.5/site-packages/paramiko-1.7.4-py2.5.egg', '/usr/lib/python2.5/site-packages/Fabric-0.0.9-py2.5.egg', '/usr/lib/python2.5', '/usr/lib/python2.5/plat-linux2', '/usr/lib/python2.5/lib-tk', '/usr/lib/python2.5/lib-dynload', '/usr/local/lib/python2.5/site-packages', '/usr/lib/python2.5/site-packages', '/usr/lib/python2.5/site-packages/Numeric', '/usr/lib/python2.5/site-packages/PIL', '/usr/lib/python2.5/site-packages/gst-0.10', '/var/lib/python-support/python2.5', '/usr/lib/python2.5/site-packages/gtk-2.0', '/var/lib/python-support/python2.5/gtk-2.0', '/usr/lib/site-python', '/home/www/rdif.com/test/']
Server time: Wed, 7 Jan 2009 23:18:19 -0700
我花了一些时间在Django源代码中,但在那里找不到任何东西.我是否需要遍历每个表单集并仅保存已更改的模型?
解决方法:
我发现了我的问题,这很尴尬.
在父模型形式中,我在Meta类中具有exclude =(‘…’,),并且其中一个排除字段对于inline_formsets中的关系至关重要.因此,我删除了排除项,并忽略了模板中的那些字段.
内容总结
以上是互联网集市为您收集整理的python-如何在Django中保存内联表单集模型?全部内容,希望文章能够帮你解决python-如何在Django中保存内联表单集模型?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。