2014-02-10 23 views
0

Sinatra已將sinatra/contrib與此聯繫起來,Ramaze中的等價物是什麼?順便說一句,我正在使用Erubis。此外,快速谷歌搜索顯示了真正的舊頁面,堅持在控制器中設置變量並在視圖中使用它們。在Ramaze中使用content_for和yield_content

編輯1:

從寶石文檔兩者(http://www.sinatrarb.com/contrib/content_for.html

你打電話content_for,一般從一個視圖,以捕獲標記的塊給它的識別符:

# index.erb 
<% content_for :some_key do %> 
    <chunk of="html">...</chunk> 
<% end %> 

然後,您使用該標識符調用yield_content(通常來自佈局),以呈現捕獲的塊:

# layout.erb 
<%= yield_content :some_key %> 
+0

你可以對你要實現什麼更具體一點? – leucos

回答

0

我不認爲Ramaze可以做到這一點原生。但是你可以很容易地手動執行此操作,編寫一個幫助程序來執行此操作,或者甚至可以填充Hash實例。

如果您需要在循環中呈現小塊HTML,您可能還需要查看partials。

您也可以合併render_partial,將結果存儲在散列中,並在佈局中生成其內容。

如果用例類似於渲染邊欄,您可能需要編寫一個幫助程序,以便將邏輯從視圖中移出。

一個簡單的例子是在這裏:https://github.com/Ramaze/ramaze/wiki/Adding-a-dynamic-sidebar-in-a-layout