我在django 1.11.4应用程序中有一个这样的模型,该应用程序引用了django_celery_results
中列出的不同已安装应用程序(settings.INSTALLED_APPS
)中的外键:
class Worker(models.Model):
tasks = models.ForeignKey('django_celery_results.TaskResult', null = True)
我可以毫无错误地运行makemigrations happy_farm
和migrate
,但是当我尝试访问worker.tasks时,它是NoneType而不是TaskResult管理器:
$ from happy_farm.models import Worker
$ type(Worker.objects.first().tasks)
NoneType
通常情况下,我希望看到类似django.db.models.fields.related_descriptors.ManyRelatedManager
的内容。
我还尝试导入django_celery_results.models并直接引用它,例如:
import django_celery_results
class Worker(models.Model):
tasks = models.ForeignKey(django_celery_results.models.TaskResult, null = True)
结果相同。
答案 0 :(得分:0)
由于我的目标是让许多任务与一个工作者相关联,因此答案是需要在一对多关系的多方面设置ForeignKey关系(即在TaskResult模型而不是在Worker上)