0

我有一个看起来像这样的类别模型。

class categories(models.Model):
    name=models.CharField(max_length=50,db_index=True)

class tag_relation(models.Model):
    category=models.ForeignKey(categories,db_index=True)
    relation=models.ForeignKey(main_tb,db_index=True,related_name='categoryrelation')

class main_tb(models.Model):
    name=charfield
    img_file=charfield etc..
    location=charfield

现在我需要做的是选择一个特定的类别并使用位置进一步过滤它。

我正在做的就是这个。

query=tag_relation.objects.filter(category='1orsomeother').selectrelated('categoryrelation').filter(location='india')

我知道这不是正确的方法,但我应该如何进行连接和搜索以提供最佳性能。

4

1 回答 1

1

你需要这个:

query = tag_relation.objects.filter(category__id=cat_id, relation__location='india')
于 2013-02-01T17:47:41.483 回答