【发布时间】:2014-04-03 21:54:23
【问题描述】:
在我的注册表中我有:
class RegistrationForm(forms.Form):
required_css_class = 'required'
error_css_class='error'
username = forms.RegexField(regex=r'^[\w.@+-]+$',
max_length=30,
label=_("Username"),
error_messages={'invalid': _("This value may contain only letters, numbers and @/./+/-/_ characters.")})
email = forms.EmailField(label=_("E-mail"))
password1 = forms.CharField(widget=forms.PasswordInput,
label=_("Password"))
password2 = forms.CharField(widget=forms.PasswordInput,
label=_("Password (again)"))
first_name=forms.RegexField(regex=r'^[\w.@+-]+$',
max_length=30,
label=_("first name"),
error_messages={'invalid': _("This value may contain only letters, numbers and @/./+/-/_ characters.")})
last_name=forms.RegexField(regex=r'^[\w.@+-]+$',
max_length=30,
label=_("last name"),
error_messages={'invalid': _("This value may contain only letters, numbers and @/./+/-/_ characters.")})
.................
在我使用 django-bootstrap3 的模板中:
{% extends "registration/base.html" %}
{% load bootstrap3 %}
{% bootstrap_css %}
{% bootstrap_javascript %}
{# Display django.contrib.messages as Bootstrap alerts }
{% bootstrap_messages %}
{% block title %}Registration{% endblock %}
{% block content %}
<div class="container">
<div class="row">
<div class="col-sm-offset-2 col-sm-10">
<h1>Sign up</h1>
<p>Already registered?
<a href="{% url 'django.contrib.auth.views.login' %}">Sign in here.</a></p>
</div>
</div>
<form action="{% url 'registration_register' %}"
method="post" role="form" class="form-horizontal">
{% csrf_token %}
<div class="form-group has-error">
{% bootstrap_form form layout='horizontal' %}
{% buttons %}
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-primary">
{% bootstrap_icon "star" %} Sign Me Up!
</button>
</div>
</div>
{% endbuttons %}
</form>
</div>
{% endblock %}
我附上registration form 的快照:
我要解决的三件事:
1.required field没有*。尽管我在form 中有required_css_class = 'required',但它丢失了
所有
fields最初都用红色框起来(表示错误)。仅当form fields出现错误时,该框才会亮起红色。使用
label attribute在表单中分配的内容覆盖template中form fields的label的可能方法
【问题讨论】:
标签: django django-forms django-templates twitter-bootstrap-3