簡體   English   中英

如何在頁面上多次使用相同的布局?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM