为了账号安全,请及时绑定邮箱和手机立即绑定

在表单中引用模型属性

在表单中引用模型属性

郎朗坤 2021-12-09 18:32:39
我希望在单个页面上同时编辑多个模型。我没有使用表单集,而是让它与我在视图中的模板中循环的表单数组一起使用:{% extends 'app_base.html' %} {% block content %}<p>{{message}}</p><form method="post">{% csrf_token %} {% for form in forms %}{{ form.as_p }}{% endfor %}    <input type="submit" value="Submit" /></form>{% endblock %}但是,烦人的是,我无法在输出中看到我正在编辑的内容,因为它只是一堆没有标签的文本框。因此,有什么方法可以在我循环时访问表单旁边的模型属性,例如:{% for form in forms %}{{form.object.name}}: {{ form.as_p }}{% endfor %}
查看完整描述

1 回答

?
白衣染霜花

TA贡献1796条经验 获得超10个赞

如果您ModelForm对所有表单都使用 a ,则需要使用正在更新的模型实例 ( MyForm(data=request.POST, instance=...))对其进行初始化。

您可以访问instance表单的 ,它只是表单上的一个属性:form.instance

请注意,它始终存在于 上ModelForm,即使您instance在初始化时没有传递 an 。在这种情况下,它是表单模型的初始化实例,而不是保存实例。所以form.instance.pk = None在那种情况下。


查看完整回答
反对 回复 2021-12-09
  • 1 回答
  • 0 关注
  • 187 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号