创新设计记录(八)

前言

本篇博客记录管理员登录功能。

后端

接口:admin/getuser 获取当前注册用户的全部信息
	 admin/admin_login 管理员登录接口
def get_user(current_admin: Administrator = Depends(get_admin)):
    session = Session(bind=engine)
    users = session.query(User).all()

    return BaseResponse(code=200, msg='用户查询成功', data={'user_list': [serialize_user(u) for u in users]})


def admin_login(admin_model: AdminModel):
    session = Session(bind=engine)
    admin = session.query(Administrator).filter(Administrator.name == admin_model.name).first()
    if not admin:
        return BaseResponse(code=400, msg='管理员不存在')

    if admin.password != admin_model.password:
        return BaseResponse(code=401, msg='密码错误')

    access_token_expires = timedelta(minutes=JWT_ARGS["expire_time"])
    access_token = create_access_token(
        data={"sub": admin.id, "index": 1}, expires_delta=access_token_expires  # index索引是0代表用户,1代表管理员
    )

    return BaseResponse(code=200, msg='管理员登录成功', data={"token": access_token, 'admin_id': admin.id})

前端

  1. 管理员登录按钮:在登录表单中,有一个按钮用于触发管理员登录。这个按钮通过v-if="loginfiex == 1"条件渲染,当loginfiex变量为1时显示。
  2. 管理员登录方法admin_login方法处理管理员登录。它将用 户名和密码封装成对象,调用login2服务函数,并根据返回结果进行提示和跳转。
  3. 切换登录方式change方法用于切换普通登录和管理员登录的界面。

效果展示

请添加图片描述
请添加图片描述

请添加图片描述
请添加图片描述
被封禁的帐号无法登录。
请添加图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值