如何在Django中访问其他应用程序模型?

时间:2018-07-25 16:21:10

标签: django django-models many-to-many

我有两个主应用和一个表 在我的主要工作中,我有一个模型UserSelect,而表中有一个模型Bowler 我需要这样做

from main.models import UserSelect, User

class Bowlers(models.Model):
 users = models.ManyToManyField(User, through='UserSelect')

但是它给出了错误 “字段通过模型'UserSelect'指定了多对多关系,尚未安装” 那我该怎么办呢?

1 个答案:

答案 0 :(得分:1)

您可以通过使用字符串引用来懒惰引用任何应用程序中的模型

class Bowlers(models.Model):
    users = models.ManyToManyField('main.User', through='main.UserSelect')

但是您遇到的特定问题是,您应该将UserSelect类作为通过参数而不是字符串传递给

class Bowlers(models.Model):
    users = models.ManyToManyField(User, through=UserSelect)