寻找合适的行为

时间:2011-10-10 18:33:39

标签: django django-models

我的模特:

class Question(models.Model):
    content = models.CharField(max_length=160)

class Answer(models.Model):
    content = models.CharField(max_length=260)    
    question = models.ForeignKey(Question)

如果我想要所有与特定问题相关的答案,但尽可能少地引用数据库,我是否应该使用select_related

 q = Question.objects.select_related(depth=1).get(id=id)            
 answers = q.answer_set.all()

或只是:

 q = Question.objects.get(id=id)            
 answers = q.answer_set.all()

1 个答案:

答案 0 :(得分:1)

要回答此类问题,请考虑安装Django Debug Toolbar。它提供了有关处理请求所执行的所有数据库查询的信息,包括每个查询所花费的时间。

因此,请在项目中安装工具栏,然后浏览到站点上执行查询的页面。单击工具栏上的查看信息。尝试两种方式,看看哪个更好。