BBS项目修改密码退出登录

创建超级管理员用户和登录步骤

一、修改密码编写步骤概览

  • 开设修改密码路由
  • 首页前端代码写Ajax请求
  • 回到后端继续修改密码逻辑

二、修改密码编写步骤详细

1.开修改密码路由

    # 修改密码功能
    path('set_pwd/', views.set_pwd_func),

2.写修改密码的视图函数

from django.contrib.auth.decorators import login_required


@login_required
def set_pwd_func(request):
    pass

3.在首页前端页面已经写好了Ajax请求

<script>
    $('#setBtn').click(function () {
        $.ajax({
            url: '/set_pwd/',
            type: 'post',
            data: {
                'old_pwd': $('#old_pwd').val(),
                'new_pwd': $('#new_pwd').val(),
                'confirm_pwd': $('#confirm_pwd').val(),
                'csrfmiddlewaretoken': '{{ csrf_token }}',
            },
            success: function (args) {
                if (args.code === 10000){
                    window.location.href = args.url
                }else{
                    $('#error').text(args.msg)
                }
            }
        })
    })
</script>

4.回到视图函数不全修改密码的后端代码

@login_required
def set_pwd_func(request):
    back_dict = {'code': 10000, 'msg': ''}
    if request.method == 'POST':
        old_pwd = request.POST.get('old_pwd')
        new_pwd = request.POST.get('new_pwd')
        confirm_pwd = request.POST.get('confirm_pwd')
        # 先校验原密码是否正确
        if request.user.check_password(old_pwd):
            # 再校验两次密码是否一致 并且不能为空
            if new_pwd == confirm_pwd and new_pwd:
                request.user.set_password(new_pwd)
                request.user.save()
                back_dict['msg'] = '密码修改成功'
                back_dict['url'] = '/login/'
            else:
                back_dict['code'] = 10001
                back_dict['msg'] = '两次密码不一致或者为空'
        else:
            back_dict['code'] = 10002
            back_dict['msg'] = '原密码错误'
        return JsonResponse(back_dict)

三、退出登录编写步骤概览

  • 开设退出登录的路由
  • 写退出登录视图函数
  • 在首页绑定路由调到首页

四、退出登录编写步骤详细

1.开设路由

    # 退出登录功能
    path('logout/', views.logout),

2.写视图函数

@login_required
def logout(request):
    auth.logout(request)
    return redirect('home_view')

五、创建超级管理员用户和登录步骤

1.创建超级管理员的详细步骤
BBS修改密码-小白菜博客
2.超级管理员登录界面
BBS修改密码-小白菜博客
3.超级管理员登陆成功的界面!
image

4.需要在Django配置里注册一下哦!

image

六、开设media媒体目录的步骤

1.在配置文件里面添加以下配置

MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

2.添加路由 不用背是固定写法

from django.contrib import admin
from django.urls import path, re_path
from app01 import views
from django.views.static import serve
from django.conf import settings
 	# 自定义暴露资源接口
	re_path('media/(?P<path>.*)', serve, {'document_root': settings.MEDIA_ROOT}),

3.在前端首页代码修改头像路径即可属于后期代码优化