我目前正在尝试使用酥脆形式和更好的形式来创建一个很大的形式。我尝试通过其helper属性将布局设置为完整的表单,但是什么也没有发生。如果我通过一个荒谬的布局,也不会发生任何事情。如果我在每个包含的表单中添加帮助程序和布局,然后分别渲染它们,则它就像一个魅力。但是我不想将布局声明分成多个部分。
也许,让它更清晰一点:
我所拥有的:
class RegattaMultiForm(MultiModelForm):
form_classes = {
'regatta': RegattaForm,
'organiser': BaseInstitutionCreateForm,
'organiser_address': BaseAddressForm,
'organiser_contact': ContactForm,
'host': BaseInstitutionCreateForm,
'host_address': BaseAddressForm,
'host_contact': ContactForm,
'coordinator': BaseInstitutionCreateForm,
'coordinator_address': BaseAddressForm,
'coordinator_contact': ContactForm,
}
helper = FormHelper()
helper.layout = Layout(Div("regatta-event_date"))
我期望的结果 作为要渲染的单个字段“ event_date”,或者根本不显示,因为我不确定如何选择特定字段(我不知道名称...)
我能得到的 (Just for demonstration purpose, you see, all fields are rendered)
**我目前的解决方式**
{% for thing, value in form.forms.items %}
{% crispy value %}
{% endfor %}
但这意味着我必须拆分布局定义,这是我要避免的事情... 有人有个主意吗?