复杂的Django连接查询问题

时间:2011-10-14 15:09:04

标签: sql django django-models

我找不到Django OMR的有效方法来获取:(原始查询也没问题)

使分析所在的Sites.sitename(Analysi_Items.name ='somename'和Analysis_Items.value ='somevalue')和(Analysi_items_name ='somename'和Analysis_Items.value ='somevalue')和(Analysis_items.name ='somename'和Analysis_Items.value ='somevalue')。

class Sites(models.Model):

    region = models.CharField(max_length=1000)
    province = models.CharField(max_length=1000)
    sitename = models.CharField(max_length=1000, primary_key=True)

    class Meta:

        verbose_name_plural = "Sites"

    def __unicode__(self):

        return self.sitename

class Analysis_Items(models.Model):

        code = models.ForeignKey('Analysis')
        name = models.CharField(max_lenght=100)
        value = models.CharField(max_length=20)

        class Meta:

            verbose_name_plural = "Analysis Type"

class Analysis(models.Model):

        date = models.DateField()
        site = models.ForeignKey('Sites')

        def __unicode__(self):

            return str(self.date)

        class Meta:

            verbose_name_plural = "Analysis"

希望这很清楚。提前谢谢你!

1 个答案:

答案 0 :(得分:0)

Site.objects.filter(analysis__analysis_items__name='some_name', analysis__analysis_items__value='some_value')

您可以继续添加其他参数,并将它们全部放在一起。