[英]Add help_text only for a few fields. Django
我有注冊表單,我想 output 幫助文本僅用於密碼字段。 我該怎么做?
我想在 html 中做這樣的事情
{% for field in form.visible_fields %}
if field.name == password:
{{ field.help_text }}
{% endfor %}
我的代碼:
forms.py
from django.contrib.auth.forms import UserCreationForm, AuthenticationForm, UsernameField
from django.contrib.auth.models import User
class RegisterForm(UserCreationForm):
email = forms.EmailField(required=True, label="Email")
class Meta:
model = User
fields = ("username", "email")
field_classes = {'username': UsernameField, 'email': forms.EmailField}
視圖.py
class RegisterFormView(FormView):
form_class = RegisterForm
success_url = "/login/"
template_name = "blog/register.html"
def form_valid(self, form):
# Создаём пользователя, если данные в форму были введены корректно.
form.save()
# Вызываем метод базового класса
return super(RegisterFormView, self).form_valid(form)
寄存器.html
{% for field in form.visible_fields %}
<div class="control-group">
<div class="controls">
<!-- Username -->
<label class="control-label" for="username">{{ field.label_tag }}</label>
{{ field }}
<p>{{ field.help_text }}</p>
</div>
</div>
{% endfor %}
您可以在循環中檢查field.name
或field.html_name
等於password
{% for field in form.visible_fields %}
{{ field.label_tag }}
{{ field }}
{% if field.name == "password" %}
{{ field.help_text }}
{% endif %}
{% endfor %}
這會做到的。
{% for field in form.visible_fields %}
{{ field.label_tag }}
{{ field }}
{% if field.name == 'password1' %}
{{ field.help_text }}
{% endif %}
{% if field.name == 'password2' %}
{{ field.help_text }}
{% endif %}
<br>
{% endfor %}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.