随记: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')
?
?
?
?