django-crispy-forms
The best way to have Django DRY forms. Build programmatic reusable layouts out of components, having full control of the rendered HTML without writing HTML in templates. All this without breaking the standard way of doing things in Django, so it plays nice with any other form application.
django-crispy-forms supports Django 5.2+ with Python 3.10+.
Looking for Bootstrap 5 support? See the crispy-bootstrap5 package.
The application mainly provides:
A filter named |crispy that will render elegant div based forms. Think of it as the built-in methods: as_table, as_ul and as_p. You cannot tune up the output, but it is easy to start using it.
A tag named {% crispy %} that will render a form based on your configuration and specific layout setup. This gives you amazing power without much hassle, helping you save tons of time.
Django-crispy-forms supports several frontend frameworks, such as Twitter Bootstrap (versions 2, 3, and 4), tailwind, Bulma and Foundation. You can also easily adapt your custom company’s one, creating your own, see the docs for more information. You can easily switch among them using CRISPY_TEMPLATE_PACK setting variable.
Example
This is a teaser of what you can do with latest django-crispy-forms. Find here the gist for generating this form:
Documentation
For extensive documentation see the docs folder or read it on readthedocs
Special thanks
To Daniel Roy Greenfeld (@pydanny) for his support, time and the opportunity given to me to do this.
The name of the project was suggested by the fantastic Audrey Roy Greenfeld (@audreyfeldroy)
To Kenneth Love (@kennethlove) for creating django-uni-form-contrib from which bootstrap template pack was started.
To Adam Johnson (@adamchainz) for the project’s logo.
Metadata
Release files for django-crispy-forms 2.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| django_crispy_forms-2.7.tar.gz | 1.1 MB | Without provenance | Details for django_crispy_forms-2.7.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| django_crispy_forms-2.7-py3-none-any.whl | Python 3 | none | any | Details for django_crispy_forms-2.7-py3-none-any.whl |
Total release size: 1.1 MB
Release files / django_crispy_forms-2.7.tar.gz
| Download URL | django_crispy_forms-2.7.tar.gz |
|---|---|
| Size | 1.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4c59bed60417375cba26cebb2c67ab350b655934670270b1c89dbcd7e60f1b4c
|
|
BLAKE2b-256 checksum How to use checksums |
bcf5b79e3ed7cae871d5d71bf3448d627e1fabab769358bb90808bec056556fe
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.10.20
|
Release files / django_crispy_forms-2.7-py3-none-any.whl
| Download URL | django_crispy_forms-2.7-py3-none-any.whl |
|---|---|
| Size | 31.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
42a7ecb05ac3fd050d006dfe7aeceb7f318c30e5b5124ff619e2be252f36f096
|
|
BLAKE2b-256 checksum How to use checksums |
1f4450335d09c4deb70affee0c54feef07ba458df015e32e45490615d9dc5b6b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.10.20
|
Security for django-crispy-forms 2.7
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.