Tweak the form field rendering in templates, not in python-level form definitions.
Project description
Tweak the form field rendering in templates, not in python-level form definitions. Altering CSS classes and HTML attributes is supported.
That should be enough for designers to customize field presentation (using CSS and unobtrusive javascript) without touching python code.
The license is MIT.
Installation
pip install django-widget-tweaks
Then add ‘widget_tweaks’ to INSTALLED_APPS.
Usage
This app provides several template filters that can alter CSS classes and HTML attributes of django form fields.
attr
Adds or replaces any single html atribute for the form field.
Examples:
{% load widget_tweaks %} <!-- change input type (e.g. to HTML5) --> {{ form.search_query|attr:"type:search" }} <!-- add/change several attributes --> {{ form.text|attr:"rows:20"|attr:"cols:20"|attr:"title:Hello, world!" }} <!-- attributes without parameters --> {{ form.search_query|attr:"autofocus" }}
add_class
Adds CSS class to field element. Split classes by whitespace in order to add several classes at once.
Example:
{% load widget_tweaks %} <!-- add 2 extra css classes to field element --> {{ form.title|add_class:"css_class_1 css_class_2" }}
set_data
Sets HTML5 data attribute ( http://ejohn.org/blog/html-5-data-attributes/ ). Useful for unobtrusive javascript. It is just a shortcut for ‘attr’ filter that prepends attribute names with ‘data-’ string.
Example:
{% load widget_tweaks %} <!-- data-filters:"OverText" will be added to input field --> {{ form.title|set_data:"filters:OverText" }}
append_attr
Appends atribute value with extra data.
Example:
{% load widget_tweaks %} <!-- add 2 extra css classes to field element --> {{ form.title|append_attr:"class:css_class_1 css_class_2" }}
add_class filter is just a shortcut for ‘append_attr’ filter that adds values to the ‘class’ attribute.
Contributing
If you’ve found a bug, implemented a feature or have a suggestion, do not hesitate to contact me, fire an issue or send a pull request.
Source code: https://bitbucket.org/kmike/django-widget-tweaks/
Bug tracker: https://bitbucket.org/kmike/django-widget-tweaks/issues/new
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file django-widget-tweaks-0.2.1.tar.gz
.
File metadata
- Download URL: django-widget-tweaks-0.2.1.tar.gz
- Upload date:
- Size: 3.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0fc55da0d511bc79de5eb067bc0941c003ae4f9129b269302bc8ba7b94f75d55 |
|
MD5 | 26b6936411daac5cd52f0913b1b14436 |
|
BLAKE2b-256 | 105252eb5384d27812315d7b52a71a27f11e78560563dcf05d7c025bfbf5ed45 |