【发布时间】:2018-12-15 02:58:11
【问题描述】:
我正在使用 allauth 来处理我的所有身份验证。使用该应用程序,每个身份验证功能都有自己的模板。但是,我想在所有其他模板中包含注册表单。即注册表存在于/account/login/、/account/password/change ...等...
我决定通过在所有其他模板中扩展的 base.html 中包含 signup.html 来实现这一点。像这样:
base.html
...
<h4 class="card-title text-center">Register</h4>
{% include "account/signup.html" %}
...
account/base.html
{% extends "base.html" %}
account/signup.html
{% extends "account/base.html" %}
{% load i18n %}
<p>{% blocktrans %}Already have an account? Then please <a href="{{ login_url }}">sign in</a>.{% endblocktrans %}</p>
{% for message in messages %}
<span style="color:red;">{{ message }}</span>
{% endfor %}
<form class="signup" id="signup_form" method="post" action="{% url 'account_signup' %}">
{% csrf_token %}
{% for field in form %}
<div id="input-group">
{{ field }}
</div>
{% endfor %}
{% if redirect_field_value %}
<input type="hidden" name="{{ redirect_field_name }}" value="{{ redirect_field_value }}" />
{% endif %}
<div class="card-footer text-center">
<input type="submit" class="btn" value='{% trans "Get started" %}'>
</div>
</form>
account/login.html
{% extends "account/base.html" %}
{% load static %}
{% load i18n %}
{% load account socialaccount %}
{% get_providers as socialaccount_providers %}
{% block general_notice_modal %}
{% endblock general_notice_modal %}
{% block login-modal %}
...
此代码导致以下错误,仅在我在 base.html
中添加 {% include %} 标记时发生【问题讨论】:
标签: django templates include django-allauth