django实现用户注册实例讲解

yipeiwu_com7年前Python基础

创建一个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

以上就是本次介绍的全部相关知识点实例代码,感谢大家的学习和对【听图阁-专注于Python设计】的支持。

相关文章

Python设计模式之代理模式简单示例

Python设计模式之代理模式简单示例

本文实例讲述了Python设计模式之代理模式。分享给大家供大家参考,具体如下: 代理模式在一般形式上是一个类函数接口。代理可以是这些事物的接口:网络连接,存储的对象,文件,或者其他资源(...

python实战教程之自动扫雷

python实战教程之自动扫雷

前言 自动扫雷一般分为两种,一种是读取内存数据,而另一种是通过分析图片获得数据,并通过模拟鼠标操作,这里我用的是第二种方式。 一、准备工作 1.扫雷游戏 我是win10,没有默认的扫...

python使用opencv驱动摄像头的方法

如下所示: #coding:utf-8 import cv2 import sys from PIL import Image def CatchUsbVideo(win...

Python3中的真除和Floor除法用法分析

本文实例讲述了Python3中的真除和Floor除法用法。分享给大家供大家参考,具体如下: 在Python3中,除法运算有两种,一种是真除,一种是Floor除法,这两者是有分别的,分别如...

用xpath获取指定标签下的所有text的实例

今天用xpath获取的元素下面text 是被几个b标签分割开的,我想要一次性全部获取,参考了其他人的博客是如下的做法: value_ls = html.xpath("//tr/td[...