加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – Django:需要用户电子邮件

发布时间:2020-12-16 22:30:19 所属栏目:Python 来源:网络整理
导读:对于我的应用程序,应该要求用户的电子邮件字段.对于默认的用户模型,情况并非如此.所以我认为按照docs中的描述创建自定义用户模型是有意义的: If you’re starting a new project,it’s highly recommended to set up a custom user model,even if the defau

对于我的应用程序,应该要求用户的电子邮件字段.对于默认的用户模型,情况并非如此.所以我认为按照docs中的描述创建自定义用户模型是有意义的:

If you’re starting a new project,it’s highly recommended to set up a
custom user model,even if the default User model is sufficient for
you. This model behaves identically to the default user model,but
you’ll be able to customize it in the future if the need arises:

from django.contrib.auth.models import AbstractUser

class User(AbstractUser):
    email = models.EmailField(_('email address'),blank=False)

但是,我不确定这是否是实现这一目标的正确方法.

原因是here Django文档说:

Abstract base classes are useful when you want to put some common
information into a number of other models. You write your base class
and put abstract=True in the Meta class. This model will then not be
used to create any database table. Instead,when it is used as a base
class for other models,its fields will be added to those of the child
class. It is an error to have fields in the abstract base class with
the same name as those in the child (and Django will raise an
exception).

我现在应该怎么做?

最佳答案
我必须回答我的问题,因为现在我知道了解决方案:

我在开始帖子中描述的方式应该有效.文档是错的:
https://code.djangoproject.com/ticket/29192

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读