我正在尝试使用oauth2_provider
库,该库为AccessToken提供了一个模型,该模型将外键转换为User模型。我的用户模型实际上将与OAuth2令牌模型位于不同的数据库中。我可以使用路由器来指导将哪个数据库用于特定模型,但是我得出的结论是Django不支持在其他数据库中使用模型的外键是正确的吗?
如果我仍然想使用其他数据库中的用户从AbstractAccessToken
进行扩展,那么Django是否有办法允许我填充user_id
外键列?还是只需要保留它null
并定义并让我的自定义AccessToken类定义自己的不受约束的external_user_id
列?
答案 0 :(得分:0)
Django不支持跨多个数据库的任何ForeignKey
操作。因此,正如您所建议的,我认为最好的办法是为用户提供自己的IntegerField
并手动使用。不幸的是,如果第三方库中有许多内部代码希望将用户从数据库中拉出,则可能需要对第三方库进行很多摆弄。