django 使用框架下auth.models自带的User进行扩…

2019-05-10 06:00:29来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

需要改动三个地方:

1.models.py   创建模型User,并继承原模型类AbstraUser(在此处我增加了一个新的字段手机号)

from django.db import models

# Create your models here.


from django.contrib.auth.models import AbstractUser


class User(AbstractUser):
    tel = models.CharField(max_length=11, unique=False, verbose_name='手机号')

2.settings.py   新增设置如下,‘first_app’为你的app的名字,‘User’为models.py中第1步新创建的类名(也就是新的表名,此处仍使用原来自带的表名)

# 继承原User表设置
AUTH_USER_MODEL = 'first_app.User'

3.此处有一个坑,大多数博客都没写此步骤,如代码中,注释掉的是之前我们使用框架自带的User类时所导入的User,而从当前目录models中导入的User才是我们扩展后使用的User,因为继承后原User已经被替换,此处不改会报错的:

error:Manager isn't available; 'auth.User' has been swapped for 'first_app.User' in Django

# from django.contrib.auth.models import User
from .models import User

 结束,如有不懂或其他见解欢迎添加我的微信交流:zhx799758765


原文链接:https://www.cnblogs.com/tttzqf/p/10837916.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:python的学习之路(三)

下一篇:python 列表 元组