微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Bootstrap Carousel循环浏览活动存储图片Rails 6

如何解决Bootstrap Carousel循环浏览活动存储图片Rails 6

我一直在尝试添加一个轮播,该轮播可以检测上传的图像并将其相应地显示在轮播中。就像我上传1一样,它只会显示出来,如果2则如此。我似乎真的不知道该怎么办。我一直在尝试一个一个代码,但它永远无法工作。我想我应该以某种方式循环播放它们,但是我只是无法理解要实现它的内容

我在想使用轮播之前使用了此代码,但是如果我尝试将其放入轮播中,它确实可以工作


 <% (0...@ad.photos.count).each do |photo| %>
  <%= image_tag(@ad.photos[photo]) %>
  <% end %>

这是一个简单的轮播

 <div class="container my-4">

    <hr class="my-4">

    <!--Carousel Wrapper-->
    <div id="carousel-thumb" class="carousel slide carousel-fade carousel-thumbnails" data-ride="carousel">
      <!--Slides-->
      <div class="carousel-inner" role="listBox">
        <div class="carousel-item active">
          <img class="d-block w-100" src=".." alt="First slide">
        </div>
        <div class="carousel-item">
          <img class="d-block w-100" src=".." alt="Second slide">
        </div>
        <div class="carousel-item">
          <img class="d-block w-100" src=".." alt="Third slide">
        </div>
      </div>
      <!--/.Slides-->
      <!--Controls-->
      <a class="carousel-control-prev" href="#carousel-thumb" 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="#carousel-thumb" role="button" data-slide="next">
        <span class="carousel-control-next-icon" aria-hidden="true"></span>
        <span class="sr-only">Next</span>
      </a>
      <!--/.Controls-->
      <ol class="carousel-indicators">
        <li data-target="#carousel-thumb" data-slide-to="0" class="active"> <img class="d-block w-100"></li>
        <li data-target="#carousel-thumb" data-slide-to="1"><img class="d-block w-100" ></li>
        <li data-target="#carousel-thumb" data-slide-to="2"><img class="d-block w-100" ></li>
      </ol>
    </div>
    <!--/.Carousel Wrapper-->

我尝试将代码重用到包装器中,但没有用

解决方法

以下代码应该可以工作。我认为这些照片已保存在Cloudinary中,否则,只需更改“ img”标签中的代码即可以正确的方式显示这些照片。

<% if @ad.photos.size == 1 %>
    <img class="d-block w-100" src="<%= cl_image_path @ad.photos.first.key %>" alt="photo" >

<% elsif @ad.photos.size > 1 %>
    <div id="carouselExampleIndicators" class="carousel slide" data-ride="carousel">
        <ol class="carousel-indicators">
            <% @ad.photos.size.times do |i| %>
                <li data-target="#carouselExampleIndicators" data-slide-to="<%= i %>" class="<%= "active" if i.zero? %>"></li>
            <% end %>
        </ol>

        <div class="carousel-inner">
            <% @ad.photos.each_with_index do |photo,index| %>
                <div class="carousel-item <%= "active" if index.zero? %>">
                    <img class="d-block w-100" src="<%= cl_image_path photo.key %>" alt="<%= index.ordinalize %> image">
                </div>
            <% end %>
        </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>
<% end %>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。