我正在將舊的Rails應用程序(1.1.6)升級到Rails 3.很明顯,很多變化。有一件事似乎是Rails自動轉義掉視圖中的內容。然而,我有一種情況,我有一個幫手爲我生成IMG標籤,而Rails會自動轉義結果內容。Rails自動隱藏HTML - 如何阻止它?
<%= random_image('public/images/headers') %>
這導致逃脫的內容,就像一個會期望我已經做到了這一點(在1.1.6)
<%= h random_image('public/images/headers') %>
有沒有辦法把這件事告訴不逃生?
你真的應該進入閱讀發佈記錄的習慣。什麼「h」以前做的事情現在是Rails 3的默認行爲,並且你必須做一些事情才能避免自動轉義。只需[命令] .html_safe任何字符串生成命令,或者將其放入raw(...)中,就像下面的人說的那樣。哦,並閱讀RELEASENOTES。總是。真。 :) – 2011-05-13 19:52:27
@Mörre老實說,我不確定要閱讀哪些發行說明。不知道這是Rails 2.x特性還是3.x特性 - 並且有很多版本,每個版本都有很多細節。 – 6of58 2011-05-13 20:02:02
@Mörre我承認一個有效的觀點。我不得不承認,這有點令人生畏,希望能夠快速解決一個簡單的問題。考慮到我知道在3.x中不再有相關的1.1.6 - > 2.x變化,我並不期望通過這些筆記進行解析。就學習而言,我可能會「從頭開始」,並在第一時間拿起一本好的Rails 3書籍/教程。 – 6of58 2011-05-13 20:53:25