django中的相关模型查询

时间:2018-04-03 23:40:53

标签: django database django-templates django-queryset

我有彼此相关的树模型如下:

第一堂课有关于该项目的基本信息。

class ProjectCategory(models.Model):
    project = models.ForeignKey(
                                Project,
                                on_delete = models.CASCADE)
    projectCategory = models.ForeignKey(
                                Category,
                                on_delete=models.CASCADE)

第二类用于注册与每个项目相关的类别。

class ProjectLocation(models.Model):
    project = models.ForeignKey(
                                Project,
                                on_delete = models.CASCADE)
    projectLocation = models.ForeignKey(
                                Location,
                                on_delete=models.CASCADE)

最后一个模型显示项目的位置。

 RegistryFunctionName 'param1Value', 'param2Value', etc. 

我试图在模板中呈现项目列表。 我想显示与每个项目相关的信息(类别和位置)。 怎么能实现呢? 使用查询Project.objects.all()不允许我访问字段" projectLocation"和" projectCategory"。

1 个答案:

答案 0 :(得分:2)

在您的foriegn关键字段中添加related_name,您可以通过此名称访问它们。

例如ProjectCategory:

class ProjectCategory(models.Model):
    project = models.ForeignKey(Project, related_name='categories')

所以现在你可以这样做: project.categories.all()