Python Django自定义身份验证模型

Python Django自定义身份验证模型,python,django,django-registration,Python,Django,Django Registration,不知道如何命名这个问题,让我详细说明。 我有一个非常老的django项目,从django 1.5左右开始迁移它。 它一直拥有类成员,扩展了用户,并实际用作应用程序的身份验证模型AUTH\u USER\u MODEL从未更改,但是SOCIAL\u AUTH\u USER\u MODEL被设置为自定义AUTH MODEL(它就是这样工作的)。 目前,我正在迁移到django 3.x,django注册遇到了麻烦-它以前使用成员设置为模型,但现在它根据验证用户模型进行检查。底线是,我想让它的“正确”的方

不知道如何命名这个问题,让我详细说明。 我有一个非常老的django项目,从django 1.5左右开始迁移它。 它一直拥有类
成员
,扩展了
用户
,并实际用作应用程序的身份验证模型
AUTH\u USER\u MODEL
从未更改,但是
SOCIAL\u AUTH\u USER\u MODEL
被设置为自定义AUTH MODEL(它就是这样工作的)。 目前,我正在迁移到django 3.x,django注册遇到了麻烦-它以前使用
成员
设置为模型,但现在它根据
验证用户模型
进行检查。底线是,我想让它的“正确”的方式,并设置适当的自定义模型,并确保我做的正确之前,我深入挖掘,因为我希望它不会太容易

当我简单地将
AUTH\u USER\u MODEL
设置为自定义模型时,我会得到错误
members.Member.USER\u ptr:(fields.E301)字段定义了与模型“AUTH.USER”的关系,该模型已被调出。
当我让
成员
扩展
抽象用户
而不是
用户
时,我缺少id和字段,因为django希望所有数据都在一个表中(而不是有两个一对一的关系表)。 我可以手动将数据合并到这个表中,但我甚至不确定这是否正确


在未来,什么是避免该项目陷入困境的最佳方式?如何迁移/继续?我愿意把我的手弄脏:-)

没有示例代码很难帮助。否则

创建数据库表后更改AUTH_USER_模型是非常困难的 因为它会影响外键和 多对多关系

这些文章可能会对你有所帮助

检查这个