{% for message in lab.email_sent_history.all %}
这会获取所有消息。我知道有可能只得到这样的前三个:
{% for message in lab.email_sent_history.all|slice:":3" %}
但我认为这不是一个好主意,因为它首先获取所有消息,然后只保留三个消息。我怎么才能先获得三个?从优化视图来看哪个更好。
答案 0 :(得分:0)
但我不认为这是一个好主意,因为它首先获取所有消息,然后只保留三个消息。
不完全。
切片查询集会在SQL查询中添加LIMIT
子句,这会导致数据库限制返回的记录数。无需进一步优化模板。