2015-04-04 58 views
1

我的HTML軌輔助模塊中的字符串:Rails的html_safe正在改變我的形象路徑

def app_link 
    "<a href=\"https://itunes.apple.com/us/app/one-spark/id630800549?mt=8\" target=\"_blank\"> 
    <img src=\"/assets/apple-download-button.png\" alt=\"App Store\" /> 
    </a>" 
end 

當它通常呈現逃離了HTML,但是當我添加

<%= app_link.html_safe %> 

的資產部分的圖像路徑被刪除並更改爲:

<a href="https://itunes.apple.com/us/app/one-spark/id630800549?mt=8" target="_blank"> 
    <img src="apple-download-button.png" alt="App Store" /> 
</a> 

我猜這與資產pi有關但它看起來真的很奇怪的行爲。

+0

? – sansarp 2015-04-04 08:46:57

+0

沒有。正確的圖像路徑是「/assets/apple-download-button.png」 – 2015-04-04 08:57:17

+0

我認爲html_safe不會導致問題,我已檢查並返回正確的圖像路徑,即「/assets/apple-download-button.png」 – 2015-04-04 08:59:23

回答

2

嘗試使用此助手的修改版本。希望能幫助到你。

def app_link  
    app_link_html = '' 
    app_link_html << "<a href=\"https://itunes.apple.com/us/app/one-spark/id630800549?mt=8\" target=\"_blank\"><img src=\"/assets/apple-download-button.png\" alt=\"App Store\" /></a>" 
    app_link_html.html_safe 
end 

,並鑑於

<%= app_link %> 
使用.html_safe它重定向到正確的圖像時
+0

工作。任何解釋爲什麼? – 2015-04-04 09:16:16

+0

好極了。對於html元素,我經常這樣做,並且是在幫助程序本身中包含html_safe方法的首選方式。 – sansarp 2015-04-04 09:53:14