python - 我正在尝试使用 django 内置功能更改密码,但它不起作用
问题描述
问题
我正在尝试使用 Django 内置身份验证功能更改密码,但它不会更改密码,甚至不会重定向到下一页。我已经粘贴了我为此编写的所有代码,请任何人都可以检查它并告诉我我做错了什么。
表格.py
class MyPasswordChangeForm(PasswordChangeForm):
old_password = forms.CharField(label=_("Old Password"),strip=False,widget=forms.PasswordInput(attrs={'autocomplete':'current-password', 'autofocus':True,'class':'form-control'}))
new_password1 = forms.CharField(label=_("New Password"),strip=False,widget=forms.PasswordInput(attrs={'autocomplete':'new-password','class':'form-control'}),help_text=password_validation.password_validators_help_text_html())
new_password2 = forms.CharField(label=_("Confirm New Password"),strip=False,widget=forms.PasswordInput(attrs={'autocomplete':'new-password','class':'form-control'}))
网址.py
path('passwordchange/',auth_views.PasswordChangeView.as_view(template_name='main/passwordchange.html',form_class=MyPasswordChangeForm, success_url='/passwordchangedone/'),name='passwordchange'),
密码更改.html
{% extends 'main/base.html' %}
{% load static %}
{% block title %}Buy Now{% endblock title %}
{% block main-content %}
<div class="container my-5">
<div class="row">
<h3>Welcome {{request.user.username.title}}</h3>
<div class="col-sm-2 border-end">
<ul class="list-unstyled">
<li class="d-grid"><a href="{% url 'main:profile' %}" class="btn btn-primary">Change Password</a></li>
</ul>
</div>
<div class="col-sm-9 offset-sm-1">
<h3>Change Password</h3>
<hr>
<form action="" method=" post" novalidate class="shadow-sm p-5">
{% csrf_token %}
<!-- {{form.as_p}} -->
{% for fm in form %}
<div class="form-group">
{{fm.label_tag}}{{fm}}
<small class="text-danger">{{fm.errors|striptags}}</small><br>
</div>
{% endfor %}
<input type="submit" class="btn btn-primary mt-4" value="Save">
{% if form.non_field_errors %}
{% for error in form.non_field_errors %}
<p class="alert alert-danger my-3">{{error}}</p>
{% endfor %}
{% endif %}
</form>
</div>
</div>
</div>
{% endblock main-content %}
解决方案
推荐阅读
- javascript - 当我尝试使用 facebook 按钮实现登录时如何避免此错误?
- validation - Google 表格:数据验证 - 跨多列的唯一行值
- python - 损失,准确性,val_loss 没有改变
- java - Spring REST Docs + RequestBody + 防止字段的深层文档
- python - python-docx中的文本格式
- jdbc - 如何使用soapui免费版从数据库中获取列及其值(已建立连接)
- html - CSS 样式“float:left”阻碍了锚标签的使用。不可点击
- sqlite - SQLite:从字符串路径创建文件结构表。新的查询或修改现有的?
- mongodb - 如何使用 Morphia 处理多个服务器 MongoDB
- root - 如何修复termux中的错误“E:无法找到软件包无线工具”