• Django实现注册/登录:方法2


     1 # 注册********
     2 
     3 
     4 def userreg(request):
     5     if request.method == 'POST':
     6         dict = request.POST.dict()  # 把新用户输入的邮箱、密码、昵称等转成字典形式
     7         try:
     8             del dict['csrfmiddlewaretoken']
     9             # 保存新用户到数据库的User表 注意create
    10             user = Users.objects.create(createtime=time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())),**dict)  # **dict必须放到最后
    11             # 用数据库的自增长id写入字典的id
    12             dict['id'] = user.id
    13             # Users.objects.create(email=email, pwd=pwd, nicheng=nicheng) #创建一个对象实例
    14             request.session['dict'] = dict  # 设置注册session
    15             
    16             return redirect('/userlogin') #重定向至登录,实现登陆后注册
    17         except Exception as err:
    18             errStr = err.args[1]
    19             if 'emailuniq' in errStr:
    20                 return HttpResponse('<script>alert("用户名重复");location.href="/";</script>')
    21             elif 'nichenguniq' in errStr:
    22                 return HttpResponse('<script>alert("昵称重复");location.href="/";</script>')
    23     else:
    24         return HttpResponse('<script>alert("请正确提交");location.href="/";</script>')
    25 
    26 
    27 # 登录*********↓↓↓↓↓
    28 
    29 
    30 def userlogin(request):
    31     if request.method == 'POST': #判断是否是POST方式登录
    32         rs = Users.objects.filter(email=request.POST.get('email'), pwd=request.POST.get('pwd')).first()
    33         if rs != None: #如果匹配成功
    34             loginbean = {}
    35             loginbean['id'] = rs.id
    36             loginbean['nicheng'] = rs.nicheng
    37             loginbean['role'] = rs.role
    38             request.session['loginbean'] = loginbean  #保存session
    39             # return render(request, 'home.html')
    40             if rs.role > 0:
    41                 return redirect('../home')
    42             else:
    43                 return redirect('../adminspace')
    44         else:
    45             return HttpResponse('<script>alert("用户名或密码错误");location.href="/";</script>')
    46     else: #这里以下是注册传过来的
    47         dict = request.session['dict']
    48         if dict != None:
    49             loginbean = {}
    50             loginbean['id'] = dict['id']
    51             loginbean['nicheng'] = dict['nicheng']
    52             loginbean['role'] = 1
    53             request.session['loginbean'] = loginbean
    54             del request.session['dict']
    55             return render(request, 'home.html')
    56         else:
    57             return HttpResponse('<script>alert("请登录");location.href="/";</script>')
  • 相关阅读:
    Excel教程集个人珍藏版
    【转】UML中几种类间关系:继承、实现 ...
    【转】UML用户指南(一)入门
    【转】软件项目经理素质能力的必备要求
    【转】类与类之间的常见关系,uml图表示
    【转】UML用户指南(二)类、关系、图、接口、包、实例
    Oracle建立DBLINK的详细步骤记录
    oracle中的默认帐户详解 .
    pro*c
    oracle type类型
  • 原文地址:https://www.cnblogs.com/darkmoon/p/7993703.html
Copyright © 2020-2023  润新知