在两个django项目之间共享数据库表

h3.*_*h3. 5 django django-models

我有两个不同的Django项目,它们可以并行运行并完成不同的事情.

但是他们需要共享一个公共数据库表,即Client表.

这两个项目都包含多个需要包含映射到该客户端模型的外键的应用程序.

我不确定什么是最好的方法..

zal*_*lew 5

假设两个项目都在同一个数据库上运行,只需导入要引用的模型即可.

from first_project.some_app.models import Client, OtherSharedModel

class SomeModelInSecondProject(models.Model):
    client = models.ForeignKey(Client)
Run Code Online (Sandbox Code Playgroud)


Pet*_*ell 3

不幸的是,Django对多数据库的支持并不支持数据库关系。您可以在其中一个系统上伪造这一点(即引用表格,但自己处理关键引用),但是您需要非常小心地记录您正在做的事情,以确保在应用程序中保持引用完整性是“假装”它。

  • 我没有对你投反对票,但我认为这个问题可以解释为试图在两个不同的项目中共享一个数据库。它不一定与跨数据库关系相关。我只是喜欢当其他人抱怨与原始问题无关的事情时。 (6认同)