ruby-on-rails - rails : joining an array with em space

标签 ruby-on-rails arrays ruby

是否可以用 em space 连接数组在 RoR 中?

IRB:

a = ["a", "b", "c"]
#=> ["a", "b", "c"]

a.join('    ')
#=> "a    b    c"

a.join(' ')
#=> "a b c"

a.join(' ')
#=> "a b c"

a.join(' ')
#=> "a b c"

但是由浏览器呈现,a.join(' ') 仍然吐出 a b

最佳答案

Rendered by a browser my code a.join(' ') still spits out a b

这是因为 Rails 默认会转义特殊字符:&变成 &amp; , <变成 &lt;等等。您必须将包含 HTML 实体(甚至标签)的字符串显式标记为 html_safe :

'&emsp;'.html_safe

并且由于内置 join将使 HTML 安全标记无效,Rails 提供 safe_join :

<%= safe_join(['a', 'b', 'c'], '&emsp;'.html_safe) %>

在 View 中,您还可以使用 raw 助手:

<%= safe_join(['a', 'b', 'c'], raw('&emsp;')) %>

关于ruby-on-rails - rails : joining an array with em space,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51855346/

相关文章:

ruby - 在 ruby​​ 中寻找可出租元素的理想利用

ruby-on-rails - Ruby 正则表达式的价格

ruby-on-rails - select helper中的options和choices有什么区别?

ruby-on-rails - Rails 使用复选框和 jquery ajax 更改 boolean 值

ruby-on-rails - Omniauth 中的 "Missing template"错误(ruby-on-rails)

java - 有没有更有效的方法来处理这个数组?

javascript - 过滤动态数组值

ruby-on-rails - Prawn/PDF : Multiple formats/text on one line?

javascript - 条件语句为空或非空

ruby - 剥离非字母数字字符但在 Ruby 中保留空格