完善后台和前台修改密码功能

This commit is contained in:
yangjian 2019-07-31 21:31:39 +08:00
parent 547c77a476
commit d827652a92
5 changed files with 63 additions and 7 deletions

View File

@ -8,6 +8,8 @@ urlpatterns = [
path('user_manage/',views.admin_user,name="user_manage"), # 用户管理
path('create_user/',views.admin_create_user,name="create_user"), # 新建用户
path('del_user/',views.admin_del_user,name='del_user'), # 删除用户
path('change_pwd',views.admin_change_pwd,name="change_pwd"), # 管理员修改用户密码
path('modify_pwd',views.change_pwd,name="modify_pwd"), # 普通用户修改密码
path('project_manage/',views.admin_project,name='project_manage'), # 文集管理
path('doc_manage/',views.admin_doc,name='doc_manage'), # 文集管理
path('doctemp_manage/',views.admin_doctemp,name='doctemp_manage'), # 文集管理

View File

@ -172,14 +172,19 @@ def admin_change_pwd(request):
try:
user_id = request.POST.get('user_id',None)
password = request.POST.get('password',None)
password2 = request.POST.get('password2',None)
if user_id and password:
user = User.objects.get(id=int(user_id))
user.set_password(password)
user_id.save()
return JsonResponse({'status':True,'data':'修改成功'})
if password == password2:
user = User.objects.get(id=int(user_id))
user.set_password(password)
user.save()
return JsonResponse({'status':True,'data':'修改成功'})
else:
return JsonResponse({'status':False,'data':'两个密码不一致'})
else:
return JsonResponse({'status':False,'data':'参数错误'})
except Exception as e:
print(repr(e))
return JsonResponse({'status':False,'data':'请求错误'})
else:
return JsonResponse({'status':False,'data':'方法错误'})
@ -292,7 +297,9 @@ def change_pwd(request):
if request.method == 'POST':
try:
password = request.POST.get('password',None)
if password:
password2 = request.POST.get('password2',None)
print(password, password2)
if password and password== password2:
if len(password) >= 6:
user = User.objects.get(id=request.user.id)
user.set_password(password)
@ -301,7 +308,7 @@ def change_pwd(request):
else:
return JsonResponse({'status':False,'data':'密码不得少于6位数'})
else:
return JsonResponse({'status':False,'data':'参数错误'})
return JsonResponse({'status':False,'data':'两个密码不一致'})
except Exception as e:
return JsonResponse({'status':False,'data':'修改出错'})
else:

Binary file not shown.

View File

@ -121,6 +121,24 @@
id:'changePwd',
content:'<div style="padding:10px 0 0 20px;">修改用户[' + username + ']的密码:</div><div style="padding: 20px;"><input class="layui-input" type="password" id="newPwd1" style="margin-bottom:10px;" placeholder="输入新密码" required lay-verify="required"><input class="layui-input" type="password" id="newPwd2" placeholder="再次确认新密码" required lay-verify="required"></div>',
btn:['确认修改','取消'],
yes:function (index,layero) {
data = {
'user_id':uid,
'password':$("#newPwd1").val(),
'password2':$("#newPwd2").val(),
}
$.post("{% url 'change_pwd' %}",data,function(r){
if(r.status){
//修改成功
window.location.reload();
//layer.close(index)
}else{
//修改失败,提示
//console.log(r)
layer.msg(r.data)
}
})
},
})
};
//删除用户

View File

@ -31,7 +31,7 @@
<dd><a href="{% url 'user_manage' %}">进入后台</a></dd>
{% endif %}
<dd><a href="{% url 'manage_doc' %}">管理文档</a></dd>
<dd><a href="javascript:void(0);">修改密码</a></dd>
<dd><a href="javascript:void(0);" onclick="changePwd('{{ request.user.id }}','{{ request.user.username }}' )">修改密码</a></dd>
<dd><a href="{% url 'logout' %}">退出登录</a></dd>
</dl>
</li>
@ -152,6 +152,35 @@
},
});
};
//修改用户密码
changePwd = function(uid,username){
layer.open({
type:1,
title:'修改密码',
area:'300px;',
id:'changePwd',
content:'<div style="padding:10px 0 0 20px;">修改用户[' + username + ']的密码:</div><div style="padding: 20px;"><input class="layui-input" type="password" id="newPwd1" style="margin-bottom:10px;" placeholder="输入新密码" required lay-verify="required"><input class="layui-input" type="password" id="newPwd2" placeholder="再次确认新密码" required lay-verify="required"></div>',
btn:['确认修改','取消'],
yes:function (index,layero) {
data = {
'password':$("#newPwd1").val(),
'password2':$("#newPwd2").val(),
}
$.post("{% url 'modify_pwd' %}",data,function(r){
if(r.status){
//修改成功
window.location.reload();
//layer.close(index)
}else{
//修改失败,提示
//console.log(r)
layer.msg(r.data)
}
})
},
})
};
</script>
{% endblock %}
</body>