【超详细Django网站开发过程9】便利店管理系统之——管理员登录、注销功能

管理系统当然要有管理员登录功能啦,怎么做呢?

Lynjay的便利店管理系统,登录API如下:
1、请求消息:
POST /api/mgr/signin HTTP/1.1
Content-Type: application/x-www-form-urlencoded
2、请求参数:
http 请求消息 body 中 参数以 格式 x-www-form-urlencoded 存储
储存格式为:username=xxx&password=123456

接下来,编写程序吧!
一、创建处理登录功能的文件
在mgr文件夹中,新建sign.py文件(参考Django官方文档):

from django.http import JsonResponse

from django.contrib.auth import authenticate, login, logout

# 登录处理
def signin( request):
    # 从 HTTP POST 请求中获取用户名、密码参数
    userName = request.POST.get('username')
    passWord = request.POST.get('password')

    # 使用 Django auth 库里面的 方法校验用户名、密码
    user = authenticate(username=userName, password=passWord)
    
    # 如果能找到用户,并且密码正确
    if user is not None:
        if user.is_active:
            if user.is_superuser:
                login(request, user)
                # 在session中存入用户类型
                request.session['usertype'] = 'mgr'

                return JsonResponse({'ret': 0})
            else:
                return JsonResponse({'ret': 1, 'msg': '请使用管理员账户登录'})
        else:
            return JsonResponse({'ret': 0, 'msg': '用户已经被禁用'})
        
    # 否则就是用户名、密码有误
    else:
        return JsonResponse({'ret': 1, 'msg': '用户名或者密码错误'})


# 登出处理
def signout( request):
    # 使用登出方法
    logout(request)
    return JsonResponse({'ret': 0})

二、配置路由
1、主url下查看是否有够跳转到mgr子路由文件的语句在这里插入图片描述
2、打开mgr子路由文件添加配置语句:
在这里插入图片描述
三、进入管理员登录界面,查看效果
输入管理员登录网址:http://localhost/mgr/sign.html
在这里插入图片描述
将【超详细Django网站开发过程3】便利店管理系统之——该如何建立超级管理员账户去管理客户信息呢? 中我们所新建的超级管理员账号密码输入进去看是否能够登录成功。
登录成功
登录成功。
点击退出,查看是否能够成功退出管理员账户:
在这里插入图片描述
退出成功。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值