问题描述
我知道部分继承它是不可能的。 我需要为我的Django应用程序创建一个用户模型,因为我想使用Django中定义的User类。 但我不需要用户名字段,根据需要设置。
假设我从User继承到MyUser。 是否可以删除MyUser中的用户名属性。 即del MyUser.username? 或者有人可以建议其他方式来做到这一点?
1楼
专门针对此场景而制作。
继承此类并定义您自己的字段,并确保将USERNAME_FIELD
属性设置为您的电子邮件字段。
2楼
用户名字段是必需的 - 否则用户无法登录。
如果您想要一个电子邮件地址作为用户名 - 从django 1.5开始,您可以创建自己的 ,它将像django附带的默认模型一样工作。
在此自定义用户模型中,将USERNAME_FIELD
属性设置为要用于用户名的列的名称。
此列必须是唯一的。
您需要做很多工作,实际上这应该在项目开始时完成,因为这些更改需要数据库更新。
您应该以开始使用。