I found myself in similar situation. What I come up with is a mixin for views like this one below. Still I have to add this mixin to related views, but I found it better than adding helper
to all the forms. At least I could change the default behavior for all the forms without helper
defined.
This method only works for class-based views. If you use function-based view, you could accomplish similar behavior by adding a prepare_form
function and call it every time you use a form in the views.
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