0

Django 1.3 で次のモデルをセットアップしています。私は多対多の関係を持つ学校と教師を持っています。

class Teacher(models.Model):
       schools = models.ManyToManyField(School, db_table="schoolteachers", related_name='scteachers')

これで、学校情報を表示する検索ビューができました。現在、学校ごとに教師を表示するために、Schoolモデルに機能を持たせていますが、

def get_teachers(self):

  return ' , '.join(school.name for school in self.scteachers.all())

したがって、50 の学校を表示する場合、50 のクエリを作成することは避けたいと思います。raw_query を使用することを考えていました。しかし、他に何かできるでしょうか?

ありがとう

4

1 に答える 1

1
', '.join(School.objects.filter(
  other_way_from_school_to_schoolteachers__teacher__pk=self.pk
  ).values_list('name', flat=True))
于 2012-05-04T15:44:48.277 に答える