django-crispy-forms v1.2.0 Release Notes

    • Update prepended and appended templates to respect hidden fields, thanks to Bojan Mihelac, see #GH-103.
    • Added InlineCheckboxes to bootstrap layout objects, for rendering checkboxes inline.
    • BaseInput subclasses, like Submit can now have its value set to a context variable.
    • Rendering inputs added with add_input in bootstrap using the right templates, see #GH-95.
    • Improved formsets rendering docs thanks to Samuel Goldszmidt, see #GH-92.
    • Added Tab and TabHolder layout objects thanks to david-e, see #GH-91.
    • Fixed default bootstrap button default classes thanks to david-e, see #GH-90.
    • Fixed some flaws in new testing structure by Markus Hametner.
    • Added helper attribute error_text_inline thanks to Lee Semel for controlling how to render form errors, as a block or inline, see #GH-87.
    • Support ModelMultipleChoiceField on checkboxselectmultiple, see #GH-86.
    • Redoing testing structure a little bit, to run uni_form and bootstrap tests separately. They share most of the code base, but templates pack are separate and we need to care both have the same quality assurance.
    • AppendedText, PrependedText and AppendedPrependedText were not respecting form_show_errors helper attribute, see #GH-77.
    • Added a version string to the app under root init, see #GH-76.
    • Added html5_required helper attribute for rendering required fields using HTML5 required attribute within the input, see #GH-72. Thanks to Lloyd Philbrook.
    • Some docs typos and errors fixed, also a major upgrade to docs covering the new functionality.
    • Adding a utils.render_crispy_form function, that renders a form the crispy way in Python code. This might be useful with AJAX, testing or text generation/manipulation, see #GH-64.
    • Tiny cosmetic fix, that adds an space after a button, see #GH-62.
    • MultiField and Fieldset layout objects can now have any kind of attribute defined, thanks to Lloyd Philbrook, see #GH-71.
    • Making Fieldset, MultiField & HTML contents lazy translatable thanks to Rivo Laks, see #GH-69.
    • Fixing radioselect checked status when used for a FK in a ModelForm, see #GH-68.
    • Fixing form.Meta usage, using instance fields instead of static Meta definition, so that it works when updating forms on the go, see #GH-59.
    • Added a low level manipulation API for layout and layout objects. Added a LayoutObject base class that creates an interface. This allows to access nested fields easily and use list methods without know internals of the system.
    • Added a |classes filter that returns field's classes.
    • Now FormHelper can accept a form instance as an optional first argument, from which it can build a default layout.
    • Added an API for manipulating dynamic layouts and programmatic layout building.
    • Added UneditableField bootstrap layout object for uneditable fields.
    • Support for hiding fields using Field('field_name', type="hidden"), see #GH-55.
    • Avoid template context pollution of variable form after using {% crispy %} tag, see #GH-54.
    • Added an attrs helper attribute, for more flexible form attributes, see #GH-48.
    • New AppendedPrependedText layout object thanks to Samuel Goldszmidt, see #GH-45.
    • Removal of some whitespace in crispy form's HTML generated, see #GH-42.
    • New MultiWidgetField layout object by Michal Kuffa, see #GH-39.