python – Django:使用表单在一个模板中的多个模型
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – Django:使用表单在一个模板中的多个模型,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1086字,纯文字阅读大概需要2分钟。
内容图文
![python – Django:使用表单在一个模板中的多个模型](/upload/InfoBanner/zyjiaocheng/716/7bfc5aa443ec441d8a89063a95ab31fc.jpg)
我正在构建支持票据跟踪应用程序,并且我想从一个页面创建一些模型.门票通过ForeignKey属于客户. Notes也通过ForeignKey属于Tickets.我想选择一个客户(这是一个完整的单独项目)或者创建一个新客户,然后创建一个Ticket,最后创建一个分配给新票证的Note.
由于我是Django的新手,我倾向于迭代工作,每次尝试新功能.我玩过ModelForms,但我想隐藏一些字段并进行一些复杂的验证.看起来我正在寻找的控制级别要么需要使用formset,要么手工完成所有操作,完成一个繁琐的手工编码模板页面,我试图避免.
我有什么可爱的功能吗?有人使用formset有一个很好的参考或示例吗?我为他们花了整整一个周末的API文档,我仍然无能为力.如果我分解并手工编写所有内容,这是一个设计问题吗?
解决方法:
使用ModelForms实现这一点并不难.所以假设您有表单A,B和C.您打印出每个表单和页面,现在需要处理POST.
if request.POST():
a_valid = formA.is_valid()
b_valid = formB.is_valid()
c_valid = formC.is_valid()
# we do this since 'and' short circuits and we want to check to whole page for form errors
if a_valid and b_valid and c_valid:
a = formA.save()
b = formB.save(commit=False)
c = formC.save(commit=False)
b.foreignkeytoA = a
b.save()
c.foreignkeytoB = b
c.save()
Here是自定义验证的文档.
内容总结
以上是互联网集市为您收集整理的python – Django:使用表单在一个模板中的多个模型全部内容,希望文章能够帮你解决python – Django:使用表单在一个模板中的多个模型所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。