Django:如何获取相关的外键集?

Ric*_*ard 5 django foreign-keys

我正在 Django 1.8 中工作。我有这样的模型:

class School(models.Model):
    code = models.CharField(primary_key=True)
    name = models.CharField(max_length=200)

    class Meta:
        app_label = 'frontend'

class SchoolStatusOnDate(models.Model):
    school = models.ForeignKey(School)
    date = models.DateField()
    setting = models.IntegerField()
Run Code Online (Sandbox Code Playgroud)

我想检索与特定学校相关的所有状态,并且我认为我应该能够使用_set此处描述的方法来完成此操作,但它不起作用。这是我的代码:

s = School.objects.filter(code='A81018')
now = datetime.datetime.now()
SchoolStatusOnDate.objects.create(school=s, date=now, setting=4)
print s.schoolStatusOnDate_set.all()
Run Code Online (Sandbox Code Playgroud)

但这在最后一行给了我以下错误:

AttributeError: 'School' object has no attribute 'schoolStatusOnDate_set'
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

Wto*_*wer 3

schoolStatusOnDate_set应该是小写。

\n\n

来自Django 文档:以下关系 \xe2\x80\x9cbackward\xe2\x80\x9d

\n\n
\n

如果模型具有 a ForeignKey,则外键模型的实例将有权访问Manager返回第一个模型的所有实例的 a 。默认情况下,它的Manager名称为 name FOO_set,其中FOO是源模型名称,小写的

\n
\n\n

(强调我的)

\n