我创建了一个新模型并将数据存储在该表中。
如果我使用authenticate
方法,它将检查auth_user
表进行身份验证,而不是我的表。我使用PostgreSQL
作为后端。
如何使用我创建的表进行身份验证。
我是Django的初学者。
答案 0 :(得分:0)
如果您希望django使用自定义用户模型,则需要在settings.py中指定AUTH_USER_MODEL
。
# settings.py
AUTH_USER_MODEL = 'yourapp.YourModel'
您还必须在用户模型上指定USERNAME_FIELD
,并使用set_password
方法来使用默认的authenticate
功能。
通常,最佳实践不是完全覆盖默认模型,而是使用您的字段扩展AbstractBaseUser
抽象模型。
阅读django文档中有关自定义身份验证的更多信息:https://docs.djangoproject.com/en/2.2/topics/auth/customizing/