首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >尝试在django中制作一个旋转木马滑块,并尝试从数据库中获取图片,然后在前端渲染

尝试在django中制作一个旋转木马滑块,并尝试从数据库中获取图片,然后在前端渲染
EN

Stack Overflow用户
提问于 2020-10-13 22:11:48
回答 1查看 95关注 0票数 0

我正在试着做一个旋转木马滑块。图片来自数据库,然后呈现在前端滑块上。但图片正在渲染,但它正在创建新的滑块,当我切换到下一张幻灯片时,它会显示相同的图片。该怎么办??

我的代码在这里...

代码语言:javascript
复制
`{% for post in object_list %}
    <h2>{{ post.title }}</h2>
</ul>

<div id="carouselExampleIndicators" class="carousel slide" data-ride="carousel">
  <ol class="carousel-indicators">
    <li data-target="#carouselExampleIndicators" data-slide-to="0" class="active"></li>
    <li data-target="#carouselExampleIndicators" data-slide-to="1"></li>
    <li data-target="#carouselExampleIndicators" data-slide-to="2"></li>
  </ol>
  <div class="carousel-inner">
    <div class="carousel-item active">
      <img src="{{ post.image.url}}" class="d-block w-100" alt="{{ post.title }}">
    </div>
    <div class="carousel-item">
      <img src="{{ post.image.url }}" class="d-block w-100" alt="{{ post.title }}">
    </div>
    <div class="carousel-item">
      <img src="{{ post.image.url }}" class="d-block w-100" alt="{{ post.title }}">
    </div>
  </div>
  <a class="carousel-control-prev" href="#carouselExampleIndicators" role="button" data-slide="prev">
    <span class="carousel-control-prev-icon" aria-hidden="true"></span>
    <span class="sr-only">Previous</span>
  </a>
  <a class="carousel-control-next" href="#carouselExampleIndicators" role="button" data-slide="next">
    <span class="carousel-control-next-icon" aria-hidden="true"></span>
    <span class="sr-only">Next</span>
  </a>
</div>
{% endfor %}
{% endblock %}
`
EN

回答 1

Stack Overflow用户

发布于 2020-10-13 22:51:45

views.py文件中的某个时刻,您向模板传递了一个context以进行呈现,可能如下所示:

代码语言:javascript
复制
post = ...
return render(request, "template_name", {"post": post})

因为我自己或其他任何人都不可能知道post包含什么,所以我们也不可能确切地告诉你如何解决这个问题。然而,问题在于以下代码的重复:

代码语言:javascript
复制
<div class="carousel-inner">
    <div class="carousel-item active">
        <img src="{{ post.image.url}}" class="d-block w-100" alt="{{ post.title }}">
    </div>
    <div class="carousel-item">
        <img src="{{ post.image.url }}" class="d-block w-100" alt="{{ post.title }}">
    </div>
    <div class="carousel-item">
        <img src="{{ post.image.url }}" class="d-block w-100" alt="{{ post.title }}">
    </div>
</div>

显然,您对所有三个carousel-item都使用了相同的post.image.url变量。假设一个post对象可以是多个图像,那么下面这样的代码应该是有效的:

代码语言:javascript
复制
<div class="carousel-inner">
    {% for image in post.images %}
        <div class="carousel-item active">
            <img src="{{ image.url}}" class="d-block w-100" alt="{{ post.title }}">
        </div>
    {% endfor %}
</div>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64336877

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档