Django 1.6中的复杂查询集

2024-06-06 02:05:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在开发django1.6,我想在Season'sinactive为True时过滤所有Activities

这在下面的模型中是可能的吗? 阶级生产没有季节生产和季节生产的外键

class Activity(models.Model):
    production = models.ForeignKey(Production, null=True, verbose_name='ProductionId')

class SeasonProduction(models.Model):
    season = models.ForeignKey(Season, verbose_name='SeasonId')
    production = models.ForeignKey(Production, verbose_name='ProductionId')

class Season(models.Model):
    name = models.CharField('Name', max_length=255)
    inactive = models.BooleanField(default=True)

class Production(models.Model):
    prod_info = models.CharField('ProductionInfo', max_length=255,
                                       null=True, blank=True)
    title = models.CharField('Title', max_length=255)

Tags: nametrueverbosemodelmodelsnulllengthmax
1条回答
网友
1楼 · 发布于 2024-06-06 02:05:16

试试这个:

season_prods = SeasonProduction.objects.filter(season__inactive=True)

activities = Activity.objects.filter(
    production__in=season_prods.values('production_id'))

相关文档链接:

相关问题 更多 >