2013-02-24 51 views
1

對不起,我不會使用英文的具體表達。如何糾正在Sinatra秀塊

index.erb

<h1>Hello World.</h1> 
<ul> 
    <li>item1</li> 
    <li>item2</li> 
</ul> 
<% capture_content :key do %> 
I'm Here. 
<% end %> 

helpers

def capture_content(key, &block) 
    @content_hash = {} 
    @content_hash[key] = block.call # this block contains erb all 
end 

我只想capture_content內容

我希望表達的是正確的T_T

+0

你想達到什麼目的? – gmaliar 2013-02-24 14:42:05

+0

我想@content_hash [:key] ='我在這裏' – kennx9 2013-02-24 14:46:53

+0

也許Sinatra :: Contrib中的[Sinatra :: ContentFor](http://www.sinatrarb.com/contrib/content_for.html)你的需要? – nemesv 2013-02-24 14:58:51

回答

0

如果您正在尋找自己編寫西納特拉equiva借給Reails content_for幫手,那麼你不需要。

因爲有一個名爲Sinatra::ContentFor的擴展程序,它是Sinatra::Contrib項目的一部分,它可以完成您想要的任務。

documentation

西納特拉:: ContentFor是一組助手,讓你捕捉 塊內部的意見被要求在以後的渲染。最常見的 常見用途是從您的 視圖填充佈局的不同部分。