【问题标题】:Is there an alternative to raw sql query?是否有原始 sql 查询的替代方法?
【发布时间】:2012-05-04 11:06:46
【问题描述】:

我在 Django 1.3 中设置了以下模型。我有 School 和 Teacher 的多对多关系。

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

现在,我有一个显示学校信息的搜索视图。目前,为了显示每个学校的教师,我在学校模型中有一个功能,

def get_teachers(self):

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

所以,如果我们显示 50 所学校,我们会提出 50 个我想避免的查询。我正在考虑使用 raw_query。但是还能做点别的吗?

谢谢

【问题讨论】:

    标签: django postgresql django-1.3


    【解决方案1】:
    ', '.join(School.objects.filter(
      other_way_from_school_to_schoolteachers__teacher__pk=self.pk
      ).values_list('name', flat=True))
    

    【讨论】:

      猜你喜欢
      • 2021-03-29
      • 2020-05-21
      • 2011-02-28
      • 1970-01-01
      • 1970-01-01
      • 2018-09-15
      • 1970-01-01
      • 1970-01-01
      • 2020-10-01
      相关资源
      最近更新 更多