私はProject
たくさん持っている を持っていPictures
ます。最初の画像をリンクとして使用して、twitter ブートストラップ modalを呼び出します。ここには、プロジェクトのページへのリンクだけでなく、いくつかの情報が表示されます。
<!-- Modal -->
<div id="<%= project.id %>" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3><%= project.title %> <small><%= project.sub_title %></small></h3>
</div>
<div class="modal-body">
<p><%= ActionView::Base.full_sanitizer.sanitize (project.description) %></p>
</div>
<div class="modal-footer">
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
<%= link_to 'More Details', project_path(project), class: 'btn btn-primary' %>
</div>
</div>
各プロジェクトでモーダルを機能させるために、 に を追加しproject.id
ましたModal id
。そのため、実際にはプロジェクトごとに 1 つずつ、多くのモーダルを作成しています。
<% @projects.each do |project| %>
<%= link_to (image_tag project.pictures.first.url), "##{project.id}", class: 'btn', role: 'button', data: { toggle: 'modal' } %>
<%= render 'projects/modal', project: project %>
<% end %>
まあ、すべてがうまくいっていますが、私はそれが好きではありません! 多くのプロジェクトがある場合、読み込みの問題になります。
したがって、すべてのモーダルをロードしない方法を見つけたいと思います。プロジェクト情報が入力されるモーダル テンプレートが 1 つ必要です。
それを改善する方法について何か考えはありますか?