2014-12-03 94 views
0

我在視圖中有以下內容。Ruby on Rails。該值的「視圖」模式顯示沒有修剪

<%= h @user.value %> 

該值的「視圖」模式顯示修剪從字符串中的前導(我想尾隨)空格。但我不會削減價值。

enter image description here

+0

有什麼背景,HTMLwise?大多數情況下,HTML中的空格並不重要,因此它是否包含在Ruby輸出中可能是無關緊要的。 – 2014-12-03 14:33:27

+0

爲什麼你使用'h' helper?在Rails 3中,這是默認逃脫的。 – 2014-12-03 14:41:02

+0

您能否提供一些關於「@ user.value」的正常輸出以及所需html輸出的說明? – 2014-12-03 14:47:54

回答

2

HTML忽略前導空白,所以你需要改變空格&nbsp;。事情是這樣的:

<%= @user.value.gsub(/ /, '&nbsp;').html_safe %> 
+1

這可能會導致該值跨越單行。在'\ A'(字符串的開始處)之後並且僅在'\ z'(字符串的結尾)之前只替換空格字符可能會給出更好的結果。 – 2014-12-03 15:23:13

+1

如果@ user.value來自用戶輸入,則存在潛在的安全漏洞 – 2014-12-03 15:38:50