0
我已经开始在django项目中使用django-cripsy-forms了。我想酥脆不打印每个表单的标签,默认情况下。我知道我可以为每个表单创建一个帮助器并设置helper.form_tag = False
属性。但是,对于所有现有的表单来说这很麻烦。是否有可能在django-cripsy-forms中将helper.form_tag默认为False?
有谁知道是否有可能重写默认的脆皮设置?
我已经开始在django项目中使用django-cripsy-forms了。我想酥脆不打印每个表单的标签,默认情况下。我知道我可以为每个表单创建一个帮助器并设置helper.form_tag = False
属性。但是,对于所有现有的表单来说这很麻烦。是否有可能在django-cripsy-forms中将helper.form_tag默认为False?
有谁知道是否有可能重写默认的脆皮设置?
我发现自己处于类似的情况。我想到的是下面这个视图的混合。尽管如此,我仍然需要将这个mixin添加到相关的视图中,但是我发现它比将helper
添加到所有表单更好。至少我可以在没有定义helper
的情况下更改所有表单的默认行为。
此方法仅适用于基于类的视图。如果使用基于函数的视图,则可以通过添加一个prepare_form
函数来完成类似的行为,并在每次在视图中使用表单时调用它。
class CrispyFormsMixin(object): def get_form(self, form_class): form = super(CrispyFormsMixin, self).get_form(form_class) # Add a default helper for crispy_forms if not getattr(form, 'helper', None): form.helper = FormHelper() form.helper.form_tag = False return form