6

我正在這裏工作一個簡單的插件,並且到目前爲止它正在工作。 除了我的幫手。 它是一個非常簡單的幫手,它只需要回顯一個<span></span>以供以後的JavaScript解析。我的扶手助手將'<'渲染爲'<'!如何使它正確渲染?

問題是,它沒有呈現html correcty,它用html代碼替換特殊字符。

我的插件初始化:

ActionView::Helpers.send :include, Test 

我的插件幫助:

module Test  
    def only_for_testing 
    render(:text => "<span></span>") 
    end 
end 

當我調用視圖內only_for_testing幫手,而不是渲染"<span></span>"它呈現 「&lt;span&gt;&lt;/span&gt;

我嘗試刪除渲染,只返回字符串,效果相同。 我真的不想爲此創建一個部分,因爲它非常非常簡單的HTML,它不適用於佈局,它只是用於解析。

任何想法,我可能做錯了嗎?

回答

16

Rails 3默認在視圖中轉義HTML。您需要在rails 3.2中使用raw()助手或「HTML字符串」.html_safe

6
module Test  
    def only_for_testing 
    render(:html=> "<span></span>") 
    end 
end 
3

,我的幫助程序不識別「:html」符號,但我相信它已被「:inline」替換爲這是我的工作

module IndexHelper 
    def logo 
     render(:inline=> "<div class='css_name'></div>") 
    end 
end