0

如何优化我的代码?

这是我的视图和模板示例:

意见:

def index(request):
    recomended = MyPost.objects.filter(recomented=True).order_by('add_date')
    posts = MyPost.objects.all()[:9]
    return render_to_response('main.html',{'recomended': recomended, 'posts':posts}, context_instance=RequestContext(request))

main.html

<h1>Website</h1>
{% for r in recomended %}
    {{ r.title }}
    {{ r.url }}
{% endfor %}

{% for p in posts %}
    {{ p.title }}
    {{ p.url }}
{% endfor %}
4

1 回答 1

0

为了对标题中的问题给出一个通用的答案,我会说:

  1. 在这样做之前,请确保您需要进行优化。是缓慢的事情还是你只是一个完美主义者?如果是后者,请利用您的时间来构建新功能。
  2. 为所有项目安装django-debug-toolbar。那里的 SQL 选项卡会告诉您是否正在运行异常大量的查询。该选项卡上的详细信息将告诉您生成查询的位置。
  3. 首先修复任何明显的错误。
  4. 如果您的视图或模板中没有明显的错误,请尝试使用select_related,或者prefetch_related如果您正在使用任何外键或多对多关系。
  5. 如果一切都失败了,请尝试原始 SQL。
于 2013-10-16T17:29:49.197 回答