Rails:将数组与em space连接起来

时间:2018-08-15 08:28:59

标签: ruby-on-rails arrays ruby

是否可以在RoR中将数组与em space连接起来?

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

2 个答案:

答案 0 :(得分:5)

  

由浏览器呈现的我的代码data仍然吐出Drawable drawable = ResourcesCompat.getDrawable(getResources(), drawableRes, null); ViewCompat.setBackground(layout, drawable);

这是因为Rails默认情况下会转义特殊字符:a.join(' ')变成a b&变成&,依此类推。您必须将包含HTML实体(甚至标签)的字符串明确标记为html_safe

<

由于内置&lt;将使HTML安全标记无效,因此Rails提供了safe_join

'&emsp;'.html_safe

在视图中,您还可以使用raw帮助器:

join

答案 1 :(得分:1)

一切正常。但是,如果您想在控制台中看到空白而不是HTML实体的代码,则必须将其转换为UTF-8字符。尝试这样的事情:

CGI.unescapeHTML(%w[a b c].join('&#8195;')) #=> "a b c"