django.contrib.formtools in preview displaying only field.data by default. Its not convenient to see integer value for fields with radio buttons or select choices.
This custom tag trying to show string value from choices if available.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | from django.template import Library
from django.template.defaultfilters import escape
register = Library()
@register.filter(name='field_str')
def field_str(bound_field):
field = bound_field.form.fields[bound_field.name]
if hasattr(field.widget,'choices'):
res = [x for x in field.widget.choices
if unicode(x[0]) == bound_field.data]
if len(res)>0:
return res[0][1]
return escape(bound_field.data)
|
More like this
- csrf test by zukosdead 2 months ago
- find even number by Rajeev529 10 months, 2 weeks ago
- Form field with fixed value by roam 11 months, 1 week ago
- New Snippet! by Antoliny0919 11 months, 2 weeks ago
- Add Toggle Switch Widget to Django Forms by OgliariNatan 1 year, 2 months ago
Comments
in django 1.0 u can use get_fieldname_display()
#
Please login first before commenting.