Py学习  »  Django

存在于不同数据库中的模型的Django外键约束

Nathan • 6 年前 • 1833 次点击  

我正在尝试使用 oauth2_provider 提供模型的库 AccessToken ,其中外键进入用户模型。我的用户模型实际上将位于与OAuth2令牌模型不同的数据库中。我可以使用一个路由器来指导特定模型使用哪个数据库,但我得出的结论是,django不支持另一个数据库中模型的外键,这是正确的吗?

如果我还想从 AbstractAccessToken 在我的用户位于不同的数据库中时,Django是否允许我填充 user_id 是否有外键列?或者我只需要离开它 null 定义并让我的自定义accesstoken类定义它自己的无约束 external_user_id 专栏?

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/30414
 
1833 次点击  
文章 [ 1 ]  |  最新文章 6 年前
Kevin Christopher Henry
Reply   •   1 楼
Kevin Christopher Henry    6 年前

Django不支持任何 ForeignKey 跨多个数据库的操作。所以,正如你所建议的,我认为你能做的最好的就是提供你自己的 IntegerField 供用户手动使用。不幸的是,如果第三方库中有大量内部代码,希望将用户从数据库中拉出来,那么这可能需要大量的处理。