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

前端之家收集整理的这篇文章主要介绍了python – Django:需要用户电子邮件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

对于我的应用程序,应该要求用户的电子邮件字段.对于默认的用户模型,情况并非如此.所以我认为按照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

猜你在找的Python相关文章