我正在创建用于用户更改密码的选项,为此,我正在使用Django auth_views
,特别是PasswordChangeView(CBV)。 Django auth_views
默认使用Django管理员设计模板。如何仅以auth_views
的形式使用自己的模板?
我正在尝试设置一个template_name
。但是auth_views
表单不会出现...
只有我提供的模板会加载。
from django.contrib.auth import views as auth_views
urlpatterns = [
path('change-password/', auth_views.PasswordChangeView.as_view(template_name='settings/alterar_passwor
d.html'), name="change-password"),
]
alterar_password.html
{% extends 'settings/settings.html' %}
{% load staticfiles %}
{% block settings %}
<a href="{% url 'change-password' %}">Mudar a minha password</a>
{% endblock %}
我期望的是
我期待将auth_views
提供的表单与我自己的模板一起使用,以便避免为用户设计Django管理。
答案 0 :(得分:1)
您可以在模板中使用此代码或类似代码。您的视图将在您的自定义模板中传递标准的“表单”,您必须在其中进行渲染。
一个例子:
<form method="post" >
<fieldset>
<legend>Password change</legend>
{% csrf_token %}
{{form.as_p}}
<button type="submit" class="form-button ">Submit</button>
<button type="reset" class="form-button btn ">Reset</button>
</fieldset>
</form>