Django 酥脆的表单可以与自定义小部件一起使用吗?

Posted

技术标签:

【中文标题】Django 酥脆的表单可以与自定义小部件一起使用吗?【英文标题】:Django crispy forms work with custom widgets? 【发布时间】:2013-09-08 21:32:29 【问题描述】:

按照本文中的代码,我能够根据另一个字段对 ModelMultipleChoiceField 中的选项进行分组。如本文所述,我使用了一个自定义小部件(字面意思是帖子中的那个):

Grouping CheckboxSelectMultiple Options in Django

所以现在表单正在呈现我想要的方式,但我希望通过使用清晰的表单来改进格式。但是,当我添加 % load crispy_forms_tags % 和 form|crispy 时,它呈现的表单没有我努力实现的分组......

有谁知道如何将清晰的表单应用到具有自定义小部件的表单并保留小部件的功能?

谢谢!

【问题讨论】:

【参考方案1】:

不,这是不可能的,因为脆皮表单从不调用小部件的 render 方法。

另一种方法是覆盖小部件的模板,在本例中为 bootstrap/layout/checkboxselectmultiple.html,以根据需要使用分组。

https://github.com/maraujop/django-crispy-forms/blob/dev/crispy_forms/templates/bootstrap/layout/checkboxselectmultiple.html

【讨论】:

以上是关于Django 酥脆的表单可以与自定义小部件一起使用吗?的主要内容,如果未能解决你的问题,请参考以下文章

使用 RadioSelect 小部件自定义 Django 表单

我可以更改表单小部件类而不在 Django 中明确重新定义它吗?

自定义 django 表单小部件

动态自定义 django 表单小部件

Kendo MVVM 数据绑定与自定义 Kendo 小部件

如何在 django 中使用 bootstrap4 设置酥脆的表格?