码迷,mamicode.com
首页 > 其他好文 > 详细

django 用户注册

时间:2019-10-30 16:26:23      阅读:89      评论:0      收藏:0      [点我收藏+]

标签:bst   represent   表名   密码   username   base   abs   migrate   ble   

创建一个apps包 专门来放子应用

创建users子应用 处理用户事务

追加导包路径

在settings中用 print(sys.path) 查看现有导包路径

sys.path.insert(0,/home/python/oldproject/meiduo/meiduo/apps)

但是这样过于low 换成下面这样

sys.path.insert(0,os.path.join(BASE_DIR,apps))

这样就可以简化导包方式

自定义用户模型类

django自带的用户模型类User

#位置 django.contrib.auth.models.User
#继承自AbstraUser AbstraUser里定义了用户具备的字段 如用户名 密码 邮箱 还封装了校验密码等一系列方法
class User(AbstractUser):
    """
    Users within the Django authentication system are represented by this
    model.

    Username, password and email are required. Other fields are optional.
    """
    class Meta(AbstractUser.Meta):
        swappable = AUTH_USER_MODEL

所以我们要为用户模型类再增加一个手机号码的字段 apps.users.models 中定义

from django.db import models
from django.contrib.auth.models import AbstractUser

class User(AbstractUser):
    #自定义用户模型类
    mobile = models.CharField(max_length=11, unique=True, verbose_name=手机号)

    class Meta:
        db_table = tb_users #自定义表名
        verbose_name = 用户 # 在admin站点管理中显示这个表叫什么
        verbose_name_plural = verbose_name

由于django有默认使用的用户模型类  ‘django.conf.global_settings‘ 中

AUTH_USER_MODEL = auth.User‘ #这里还是之前未自定义的用户模型类

我们要重新指定  在settings中

#AUTH_USER_MODEL = ‘应用名.模型类名‘
# 指定本项目用户模型类
AUTH_USER_MODEL = users.User

定义完模型类之后别忘了创建迁移文件 和执行迁移文件

命令行中

python manage.py makemigrations
python manage.py migrate

 

 

django 用户注册

标签:bst   represent   表名   密码   username   base   abs   migrate   ble   

原文地址:https://www.cnblogs.com/xujin247/p/11765404.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!