当使用Crispy Forms时,Django-userena显示两次表单

时间:2015-07-30 21:58:27

标签: python django forms django-crispy-forms django-userena

我正在尝试使用带有Django-userena的Crispy表单使其看起来更好但是当我把Crispy表单标签复制到表单中时,

我的代码如下:

{% extends 'userena/base_userena.html' %}
{% load i18n %}
{% load url from future %}
{% load crispy_forms_tags %}
{% block title %}{% trans "Signin" %}{% endblock %}
{% block content %}
<form action="" method="post" class="formholder">
  {% csrf_token %}
  {{ form|crispy }}
  <fieldset>
    <legend>{% trans "Signin" %}</legend>
    {{ form.non_field_errors }}
    {% for field in form %}
    {{ field.errors }}
    {% comment %} Displaying checkboxes differently {% endcomment %}
    {% if field.name == 'remember_me' %}
    <p class="checkbox">
    <label for="id_{{ field.name }}">{{ field }} {{ field.label }}</label>
    </p>
    {% else %}
    <p>
    {{ field.label_tag }}
    {{ field }}
    </p>
    {% endif %}
    {% endfor %}
  </fieldset>
  <input type="submit" value="{% trans "Signin" %}" />
  <p class="forgot-password"><a href="{% url 'userena_password_reset' %}" title="{% trans 'Forgot your password?' %}">{% trans "Forgot your password?" %}</a></p>
  {% if next %}<input type="hidden" name="next" value="{{ next }}" />{% endif %}
</form>
{% endblock %}

1 个答案:

答案 0 :(得分:0)

OP解决方案。

问题是,{{form | crispy}}实际上是在form.py文件中创建表单我所要做的就是从标签中删除所有其他表单并保留{{form | crispy}}

这是它的样子:

{% extends 'userena/base_userena.html' %}
{% load i18n %}
{% load url from future %}
{% block title %}{% trans "Signin" %}{% endblock %}
{% block content %}
{% load crispy_forms_tags %}
<form action="" method="post" class="formholder">
  {% csrf_token %}
  <fieldset>
    <legend>{% trans "Signin" %}</legend>
      {{ form|crispy }}
  </fieldset>
  <input type="submit" value="{% trans "Signin" %}" />
  <p class="forgot-password"><a href="{% url 'userena_password_reset' %}" title="{% trans 'Forgot your password?' %}">{% trans "Forgot your password?" %}</a></p>
  {% if next %}<input type="hidden" name="next" value="{{ next }}" />{% endif %}
</div>
</form>
{% endblock %}