[英]How can I use the same layout multiple times on a page?
TL; DR:如何在頁面上多次使用相同的布局? 所有嘗試使用重復布局渲染部分都會進入第一次使用布局的元素。
快速信息:
運用
Rails 2.3.14
Ruby 1.8.7
我的部分使用content_for,這對布局非常方便。
基本上,我的布局看起來像這樣:
<div class="header">
<%= yield :modal_header %>
</div>
<div class="body">
<%= yield :modal_body or yield %>
</div>
通常,這是我使用模態布局的方式:
<% content_for :modal_header do %>
header text / elements
<% end %>
<% content_for :modal_body do %>
body info / settings for object or warning message, etc
<% end %>
這就是我在頁面上渲染模態的方法:
<%= render :partial => "section_options", :layout => "modal" %>
這非常有效
但
當我在同一頁面上嘗試渲染另一個模態時:
<%= render :partial => "section_content_options", :layout => "modal" %>
這是我頁面頂部的模態發生的事情(首先出現在HTML文檔中)
<div class="header">
-- header from second partial --
-- header from first partial --
</div>
<div class="body">
-- body from second partial --
-- body from first partial --
</div>
然后在頁面中,第二部分的內容應該是:所有內容都正確呈現...為了這個例子:
<div class="header">
section content options
</div>
<div class="body">
section contents options ... options
lil confirm / cancel buttons
</div>
有沒有辦法解決這個問題? 這種行為也很混亂javascript綁定。 所以。 對。
rails 2.3.14中是否存在布局錯誤? 我是否必須升級到rails 3才能擺脫這個問題?
模態應該使用部分而不是布局來渲染。 布局旨在定義整個站點的整體布局,而不是特定部分。 像模態(通過設計是特定的)的東西應該是通過條件或JavaScript呈現的部分。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.