2011-07-22 144 views
1

我一直在關注了Rails 3入門指南和有本說明手冊中,我不解地問:Rails的入門幫助

在Rails的早期版本中,你不得不使用<%=h post.name %>因此任何HTML在插入頁面之前都會被轉義。在 Rails 3.0中,這是現在的默認設置。要獲取未轉義的HTML,您現在使用 <%= raw post.name %>

我真的不明白這是什麼意思由轉義的HTML VS轉義HTML。誰可以給我解釋一下這個?

謝謝!

回答

2

如果post.name = <b>Bob</b>

然後轉義HTML將顯示

<b>Bob</b>

雖然未逸出HTML將顯示原始輸出

鮑勃

1

轉義HTML僅僅意味着對其進行編碼,使其看起來像HTML,因此您看到的是<b>foo</b>,而不是實際在您的網頁上被視爲HTML,如foo

它這樣做的方式是將特殊字符轉換爲稱爲HTML實體的安全版本。例如,<的HTML實體是&gt;