2011-09-25 92 views
1

目前在Learning Rails Screencasts http://www.buildingwebapps.com/learningrails上進行必要的更改,以便在Rails 3中工作。但是,在第十集中,我在將HTML代碼從數據庫中提取出來時遇到了問題。教程中的Page模型有一個body字段,每個頁面的html都放在這個字段中。查看器控制器的'show'方法從數據庫中抓取頁面,並將@ page.body的內容放入視圖中。然而,當我在瀏覽器中查看html源代碼時,我的標籤被渲染爲< h1; @gt。有什麼辦法可以解決這個問題嗎?Rails 3 HTML注入

僅供參考,我的 '秀' 的觀點是如下:

<%= @page.body %> 

回答

3

試試這個:

<%= raw(@page.body) %> 

原始方法防止逃逸HTML字符。

+0

或'<%= @ page.body.html_safe%>'。雖然在這種情況下,'生'似乎更好。 (http://stackoverflow.com/questions/4251284/raw-vs-html-safe-vs-h-to-unescape-html) –

+0

謝謝,工作過的魅力 –