就像标题所说,我有两个Django项目。与其他SO问题不同,这些是完全不同的项目,这意味着它们不共享数据库,托管环境,域名等。这就是我想要和需要的,项目之间的完全脱钩。
但是,他们在一个应用程序中都有某些模型(比如说UserProfile),这是我在两个项目中都需要的。此外,我希望只有一个项目允许登录,登录,忘记/重置密码功能。
我的想法是为它们提供RESTful API,但我仍然有一些关于如何正确实现这一点的问题:
我还没有找到一个很好的教程或一些详细解释如何实现所有这些,所以如果有人有任何资源,请告诉我。
如果我的问题不够明确,请通过评论告诉我。
谢谢。
答案 0 :(得分:-1)
首先,如果您在这两个模型中都需要UserProfile模型,并且如果您不共享数据库,那么您将在数据库中放置冗余数据,即数据库d1和d2中的数据相同。
我能想到的唯一可能的解决方案是两个独立的数据库d1和d2都可以访问。所以这样,即使使用app1在d1中进行更改,也可以在app2中检测到这些变化,因此app1检测到d2的变化也是如此。
这样,当您的用户登录app1时,更改发生在d1中,也是由app2读取的,因此app2不需要单独进行用户身份验证。
看到这个 - > https://docs.djangoproject.com/en/1.9/topics/db/multi-db/
这也是 - > Can I have two django projects sharing the same authentication model?