mirror of
https://github.com/1Panel-dev/MaxKB.git
synced 2025-12-26 01:33:05 +00:00
44 lines
1.1 KiB
Python
44 lines
1.1 KiB
Python
# coding=utf-8
|
||
"""
|
||
@project: qabot
|
||
@Author:虎
|
||
@file: users.py
|
||
@date:2023/9/4 10:09
|
||
@desc:
|
||
"""
|
||
import hashlib
|
||
|
||
from django.db import models
|
||
|
||
__all__ = ["User", "password_encrypt"]
|
||
|
||
|
||
def password_encrypt(raw_password):
|
||
"""
|
||
密码 md5加密
|
||
:param raw_password: 密码
|
||
:return: 加密后密码
|
||
"""
|
||
md5 = hashlib.md5() # 2,实例化md5() 方法
|
||
md5.update(raw_password.encode()) # 3,对字符串的字节类型加密
|
||
result = md5.hexdigest() # 4,加密
|
||
return result
|
||
|
||
|
||
class User(models.Model):
|
||
email = models.EmailField(unique=True, verbose_name="邮箱")
|
||
username = models.CharField(max_length=150, unique=True, verbose_name="用户名")
|
||
password = models.CharField(max_length=150, verbose_name="密码")
|
||
role = models.CharField(max_length=150, verbose_name="角色")
|
||
is_active = models.BooleanField(default=True)
|
||
|
||
USERNAME_FIELD = 'username'
|
||
REQUIRED_FIELDS = []
|
||
|
||
class Meta:
|
||
db_table = "user"
|
||
|
||
def set_password(self, raw_password):
|
||
self.password = password_encrypt(raw_password)
|
||
self._password = raw_password
|