Django的循环计数器中断

Django的循环计数器中断

希望这是一种快速/简便的方法。我知道一种通过自定义模板标签解决此问题的方法,但是我很好奇是否还有其他方法在寻找。我已经为博客创建了各种图库功能,并且有一个图库列表页面可以对我的所有画廊进行分页。现在,我不想显示该列表中每个画廊的所有照片,因为如果每个画廊甚至有20张图像,那么如果我分5篇文章,那一页上就只有100张图像。那会很浪费,而且是处理问题的错误方法。

我的问题是,有没有办法只显示照片集中的3张照片?我想做的事,但我认为不可能是(伪代码):

{% for photos in gallery.photo_set %}
   {% if forloop.counter lt 3 %}
     <img src="{{ photos.url }}">
   {% endif %}
{% endfor %}

从文档来看,除非我完全不了解它,否则无法通过模板系统来实现。因此,我可以编写自己的模板标签来解决该问题。我也许可以从观点的角度做一些事情,但是我并没有考虑过这个想法。我的另一个选择是给模型一个预览字段,并允许用户在预览字段中选择他们想要的照片。

无论如何,有几种不同的选择,所以我想我会对观众进行投票,看看你会怎么做。任何意见表示赞赏。就个人而言,享受有很多方法可以给这只猫蒙皮。

最佳答案

使用:

{% for photos in gallery.photo_set|slice:":3" %}

关于python - Django的循环计数器中断,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/992230/

10-11 22:04