Django -MD5密碼加密與登錄


直接貼代碼

login_reg.py

from django.shortcuts import render, redirect
from web.forms.login_reg import RegForm
from web import models
import hashlib


def login(request):
    error_msg = ''
    if request.method == 'POST':
        try:
            username = request.POST.get('username')
            password = request.POST.get('password')
            # 實例化MD5加密方法
            md5 = hashlib.md5()
            # 進行加密,python2可以給字符串加密,python3只能給字節加密
            md5.update(password.encode())
            password_md5 = md5.hexdigest()
            user_obj = models.SysUser.objects.get(USERNAME=username, PASSWORD=password_md5)
            if user_obj:
                return redirect('/web/user/list/')
        except Exception as e:
            print(e)
            error_msg = '用戶名或密碼錯誤'

    return render(request, 'login.html', {"error_msg": error_msg})

models.py

from django.db import models
from django.utils.encoding import python_2_unicode_compatible


@python_2_unicode_compatible
class SysUser(models.Model):
    """
    系統用戶表
    """
    USER_ID = models.AutoField('用戶ID', max_length=100, blank=True, primary_key=True)
    USERNAME = models.CharField('用戶名', max_length=255, unique=True, blank=True)
    PASSWORD = models.CharField('密碼', max_length=255, blank=True)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM