在Django中,两个不同应用程序的模型可以相互依赖吗?
我正在从头开始开发一个账单和会计应用程序,其中我创建了两个不同的应用程序:在Django中,两个不同应用程序的模型可以相互依赖吗?,django,django-models,django-apps,Django,Django Models,Django Apps,我正在从头开始开发一个账单和会计应用程序,其中我创建了两个不同的应用程序: 计费:例如,该应用程序存储所有与计费相关的逻辑;订阅计划、产品、优惠券和类似的东西 账户:此应用程序保存会计数据,例如:客户账户、交易等 现在我有一个问题,我需要在以下情况下将两者联系起来: 客户订阅的计划(账单应用程序中)(账户应用程序中) 客户购买的产品(账单应用程序中)(账户应用程序中) 客户(账户内应用程序)发票(账单内应用程序) 客户申请/兑换的优惠券(计费应用程序中)(计费应用程序中) 我曾尝试在这些应用程序
我不确定我是否应该把所有的模型放在同一个位置上;我想请有见识的人对我的设计进行一次审查,这样我就可以知道更好的方法是什么。这很好。为了避免导入循环,可以使用字符串定义 模块“foo/models.py”
class Foo(models.Model):
bar = models.ForeignKey('bar.Bar') # no explicit import statement required
class Bar(models.Model):
foo = models.ForeignKey('foo.Foo')
模块“bar/models.py”
class Foo(models.Model):
bar = models.ForeignKey('bar.Bar') # no explicit import statement required
class Bar(models.Model):
foo = models.ForeignKey('foo.Foo')
真正的问题是你的结构是否让事情更直观?如果您不确定为什么需要拆分依赖的代码片段,请不要这样做
相关主题: