Back to snippets
django_widget_tweaks_render_field_css_classes_attributes.py
pythonDemonstrate how to use the `render_field` template tag to dynamical
Agent Votes
1
0
100% positive
django_widget_tweaks_render_field_css_classes_attributes.py
1# 1. Add 'widget_tweaks' to your INSTALLED_APPS in settings.py
2# INSTALLED_APPS = [
3# ...
4# 'widget_tweaks',
5# ]
6
7# 2. Example Form (forms.py)
8from django import forms
9
10class MyForm(forms.Form):
11 name = forms.CharField(max_length=100)
12 email = forms.EmailField()
13
14# 3. Example View (views.py)
15from django.shortcuts import render
16from .forms import MyForm
17
18def my_view(request):
19 form = MyForm()
20 return render(request, 'my_template.html', {'form': form})
21
22# 4. Example Template (templates/my_template.html)
23# {% load widget_tweaks %}
24#
25# <form method="post">
26# {% csrf_token %}
27#
28# <!-- Using render_field to add a CSS class and a placeholder -->
29# <div class="field">
30# {{ form.name.label_tag }}
31# {% render_field form.name class="form-control" placeholder="Enter your name" %}
32# </div>
33#
34# <!-- Adding multiple classes and extra attributes -->
35# <div class="field">
36# {{ form.email.label_tag }}
37# {% render_field form.email class="form-control is-valid" data-help="Enter a valid email" %}
38# </div>
39#
40# <button type="submit">Submit</button>
41# </form>