Django Bootstrap 一次轮播 4 个项目

Django Bootstrap Carousel 4 items at a time

美好的一天。

我想在 Django 中使用 Bootstrap 轮播,每个 carousel-item 显示 4 个项目。 (最多 20 个项目)

首先在我的观点上,我创建了一个视图:

items = AllItems.objects.all().order_by('-id')
context['items'] = items 

接下来,在我的模板上,我认为我需要像这样遍历我的项目

<div class="carousel-inner">
    {% for item in items%}
        {% if forloop.counter|divisibleby:4 == 1 or forloop.first %} // Add the opening div
            <div class="carousel-item"> 
        {% endif %}
            <div class="item">{{item.item_title}}</div>              // Add the items
        {% if forloop.counter|divisibleby:4 == 0 or forloop.last %}  // Add the closing div
            </div>
        {% endif %}
    {% endfor %}
</div>

但现实是不同的。希望就这种情况问问你的逻辑。

我需要为此使用分页器吗?虽然我的第二个选择是使用分页器,然后使用 ajax 和 jquery 为每个轮播项目创建 div。

你可以利用slice

<ul>
  <div class="carousel-inner">
    {% for item in items|slice:":4"%} <!-- Shows first four objects -->
      <div class="carousel-item"> 
        <div class="item">{{item.item_title}}</div>
      </div>
    {% endfor %}
  </div>
</ul>