读书人

随记:models 中相互引用的有关问题

发布时间: 2012-12-18 12:43:41 作者: rapoo

随记:models 中相互引用的问题

有俩个 app ,假设 appa 和 appb

?

在 appa 中 from ?appb import modelsB

在appb 中 from appa import modelsA

?

这样就会出现错误,找了很久没找到原因,后来一行行的调试,终于找到是这个原因。

我想大概在设计之初是为了防止数据库中死锁的情况,就是 a表 中引用了 b表, b 表中引用了a表,

这样容易出现死锁。

?

解决办法:

1、用 from django.db.models import get_model

?

?? ? ? ? 这个就是解决这个问题的

?

?? ? ? ? 2、在引用的时候不要引入models

?

?? ? ? ? ?例如:

ModelsB:

a = models.ForeignKey('appA.modelsA',relate_name='aname')

?

?

?

?

读书人网 >编程

热点推荐