Django Crispy Forms


1. Basic Form Rendering

from crispy_forms.helper import FormHelper
from crispy_forms.layout import Layout, Submit

class SimpleForm(forms.Form):
    name = forms.CharField(max_length=50)

    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.helper = FormHelper()
        self.helper.add_input(Submit('submit', 'Submit'))

2. Form with HTML5 Attributes

from crispy_forms.bootstrap import FormActions

class HTML5Form(forms.Form):
    name = forms.CharField(max_length=50)

    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.helper = FormHelper()
        self.helper.form_tag = True
        self.helper.form_class = 'form-horizontal'
        self.helper.layout = Layout(
            'name',
            FormActions(
                Submit('submit', 'Submit', css_class='btn-primary'),
            ),
        )

3. Fieldset Grouping

4. Inline Field Grouping

5. Row and Column Grids

6. Nested Layouts

7. Dynamic Form

8. Fieldset with Legend and HTML

9. Form with Hidden Fields

10. Form with Readonly Fields

11. Bootstrap Autocomplete Field

12. Bootstrap Datepicker Field

13. MultiSelect Field

14. Select Widget with Size

15. Inline Radio Buttons

16. Inline Checkboxes

17. Disabled Field

18. HTML and CSS in Form Layout

19. Form with Custom CSS Classes

20. Horizontal Form

21. Inline Form

22. Search Form

23. File Upload Form

24. Multi-File Upload Form

25. Date Range Form

26. Time Input Form

27. URL Input Form

28. Email Input Form

29. Tel Input Form

30. Password Input Form

31. Checkbox Input Form

32. Radio Input Form

33. Select Input Form

34. Text Input Form

35. Textarea Input Form

36. Hidden Input Form