0

我正在尝试在 django 中创建一个查询集,但我没有运气。出于某种原因,我的模型似乎是错误的。我会简化。

我在models.py中有这个类:

class RcAnalysis(models.Model):
    id = models.AutoField(db_column='Id', primary_key = True) # Field name made lowercase.
    /*
    some other 10 columns (srry can't post here)
    */
    class Meta:
        db_table = 'rc_Analysis'

class RcAnalysistag(models.Model):
    analysisid = models.ForeignKey(RcAnalysis, db_column='AnalysisId') # Field name made lowercase.
    tagid = models.ForeignKey(LabTags, db_column='TagId') # Field name made lowercase.
    class Meta:
        db_table = 'rc_AnalysisTag'

我需要加入带有 analysistag 模型的 RcAnalysis。但是我没有可以正确调用 RcAnalysisTag 的字段。

就像这样的 SQL 查询:

...
from rc_Analysis A
...
inner join rc_AnalysisTag At on ( A.Id = At.AnalysisId )
inner join lab_Tags T on ( T.Id = At.TagId )

有人吗?

4

1 回答 1

0

将related_name="tags" 添加到外键定义中。然后你可以这样做:

analysis_object = RCAnalysis.object.get(id=1)
related_tags = analysis_object.tags.all()
于 2013-07-30T13:05:10.667 回答