Django Template Filter - extra CSS Klasse zu formfields
In Mezzanine Formular Feldern fehlt die Bootstrap 3 CSS Klasse “form-control”. Damit die BS3 Design Vorgaben in Mezzanine Formularen angewendet werden kann ein ganz einfacher aber hilfreicher Template-Filter geschrieben werden.
Dieser wird in einer beliebigen App im Unterverzeichnis “templatetags” abgelegt. Im Verzeichnis unbedingt auch die Datei __init__.py erzeugen, damit Django den Filter finden kann.
Hier der Code in der Datei meine_app/templatetags/addcss.py
from django import template
register = template.Library()
@register.filter(name='addcss')
def addcss(field, css):
return field.as_widget(attrs={"class":css})
Im Template wird der Filter geladen und mit folgendem Code verwendet:
{% load addcss %}
{{field|addcss:"form-control"}}
Damit wird dem Formfield die CSS Klasse “form-control” angehängt und das Ergebnis ist wie gewünscht.
Happy Coding.
Sind Sie bereit für Ihren SEO Erfolg?
Starten Sie mit uns gemeinsam durch.