Form containers¶
- References
- class crispy_forms_foundation.layout.containers.AccordionHolder(*fields, **kwargs)¶
Bases:
crispy_forms.bootstrap.AccordionAccordion items holder object to wrap Accordion item objects in a container:
AccordionHolder( AccordionItem("group name", "form_field_1", "form_field_2"), AccordionItem("another group name", "form_field"), )
AccordionHolderdirect children should allways be aAccordionItemlayout item.A random id is builded for the accordion holder if you don’t define it using
css_idargument.The first
AccordionItemcontaining a field error will be marked as active if any, else this will be just the firstAccordionItem.- render(form, form_style, context, template_pack=<SimpleLazyObject: 'bootstrap'>, **kwargs)¶
Re-implement almost the same code from crispy_forms but using
forminstance to catch field errors.
- class crispy_forms_foundation.layout.containers.AccordionItem(name, *fields, **kwargs)¶
Bases:
crispy_forms.bootstrap.AccordionGroupAccordion item object. It wraps given fields inside an accordion tab. It takes accordion tab name as first argument.
The item name is also slugified to build an id for the tab if you don’t define it using
css_idargument.Example:
AccordionItem("group name", "form_field_1", "form_field_2")
- class crispy_forms_foundation.layout.containers.Container(name, *fields, **kwargs)¶
Bases:
crispy_forms.bootstrap.ContainerOverrides original Container element to get the “active” classname from Class attribute
active_css_classso it’s compatible with Foundation 5 and 6.
- class crispy_forms_foundation.layout.containers.ContainerHolder(*fields, **kwargs)¶
Bases:
crispy_forms.bootstrap.ContainerHolder
- class crispy_forms_foundation.layout.containers.Fieldset(legend, *fields, **kwargs)¶
Bases:
crispy_forms.layout.FieldsetIt wraps fields in a
<fieldset>:Fieldset("Text for the legend", 'form_field_1', 'form_field_2' )
The first parameter is the text for the fieldset legend. This text is context aware, so you can do things like :
Fieldset("Data for {{ user.username }}", 'form_field_1', 'form_field_2' )
- class crispy_forms_foundation.layout.containers.TabHolder(*fields, **kwargs)¶
Bases:
crispy_forms.bootstrap.TabHolderTabs holder object to wrap Tab item objects in a container:
TabHolder( TabItem('My tab 1', 'form_field_1', 'form_field_2'), TabItem('My tab 2', 'form_field_3') )
TabHolderdirect children should allways be aTabItemlayout item.A random id is builded for the tab holder if you don’t define it using
css_idargument.The first
TabItemcontaining a field error will be marked as active if any, else this will be just the firstTabItem.- render(form, form_style, context, template_pack=<SimpleLazyObject: 'bootstrap'>)¶
Re-implement almost the same code from crispy_forms but passing
forminstance to itemrender_linkmethod.
- class crispy_forms_foundation.layout.containers.TabItem(name, *fields, **kwargs)¶
Bases:
crispy_forms_foundation.layout.containers.ContainerTab item object. It wraps fields in a div whose default class is “tabs” and takes a name as first argument.
Tab item is also responsible of building its associated tab link with its
render_linkusing thelink_templateattribute.Example:
TabItem('My tab', 'form_field_1', 'form_field_2', 'form_field_3')
TabItemlayout item has no real utility out of aTabHolder.- has_errors(form)¶
Find tab fields listed as invalid
- render_link(form, template_pack=<SimpleLazyObject: 'bootstrap'>, **kwargs)¶
Render the link for the tab-pane. It must be called after render so
css_classis updated withactiveclass name if needed.
- class crispy_forms_foundation.layout.containers.VerticalTabHolder(*fields, **kwargs)¶
Bases:
crispy_forms_foundation.layout.containers.TabHolderVerticalTabHolder appends vertical class to TabHolder container