目前,我对页面上的每个部分都有一个模态渲染。它有效,但我不想在每次加载页面时为每个部分呈现模式。
这是现在呈现我的模态的代码:
site/gallery.html.erb
<% @pieces.each_slice(3) do |pieces| %>
<div class="row">
<% pieces.each do |piece| %>
<div class="col-lg-4">
<%= image_tag (piece.images.joins(:blob).order('active_storage_blobs.filename ASC').first if piece.images.attached?), data: { toggle: "modal", target: "#modal#{piece.id}" }, class:"img-thumbnail mx-auto d-block img-size" %>
<p><%= piece.name %></p>
<p><%= piece.description %></p>
<%= render 'site/modal', piece: piece %>
</div>
<% end %>
</div>
<% end %>
Run Code Online (Sandbox Code Playgroud)
这是模态部分:
site/_modal.html.erb
<div class="modal fade" id="modal<%=piece.id%>" tabindex="-1" role="dialog" aria-labelledby="modalLabel" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="modalLabel"><%= piece.name %></h5>
<button type="button" …Run Code Online (Sandbox Code Playgroud) ruby-on-rails twitter-bootstrap bootstrap-modal bootstrap-4 ruby-on-rails-6