预取对象的3级层次结构

时间:2019-06-21 09:16:15

标签: django django-models

我具有以下模型结构。如果我想预取包含ModelB对象的ModelC对象,请执行ModelC.objects.prefetch_related('ModelB'). 但是我该如何获取ModelB中包含的ModelA对象。我尝试过类似ModelC.objects.prefetch_related('ModelB').prefetch_related('ModelA').之类的事情,但不起作用

class ModelA:

class ModelB:
      ModelA = models.ForeignKey(
            ModelA, on_delete=models.CASCADE, db_constraint=False)

class modelC:
    ModelB = models.ManyToManyField('ModelB', blank=True)

1 个答案:

答案 0 :(得分:3)

您可以尝试这样:

Rails.application.routes.default_url_options[:host] = "localhost:3000"