3

在我看来,我想在我的链接中显示一些直角双引号。

在 Rails 3 之前,这有效:

<%= link_to "&raquo; #{@category.name}", some_path %>

现在,如果我想指定&raquo;为 html_safe 而不是链接文本的其余部分,我该怎么办?

换句话说,我不想这样做:

<%= link_to "&raquo; #{@category.name}".html_safe, some_path %> 我不希望将其@category.name视为 html_safe。

这会产生所需的结果:

<%= link_to "&raquo;".html_safe + " #{@category.name}", some_path %>

但是,如果我这样做:

<%= link_to "#{@category.name}" + "&raquo;".html_safe, some_path %>

角度引号的输出不被视为安全。我&raquo;在我的页面上看到而不是»。

为什么?

我尝试提取"&raquo;".html_safe到具有相同结果的辅助方法。

有没有办法在 Rails 3 中轻松地将硬编码文本/符号指定为 HMTL 安全?

谢谢。

4

2 回答 2

3

在这种情况下,我经常明确地避开不安全的部分:

"&raquo; #{h @category.name}".html_safe
于 2011-06-01T21:56:05.670 回答
0

你需要确保整个字符串是 html_safe ...

我建议试试这个:

   "&raquo; #{h @cagegory.name}".html_safe
于 2011-06-01T21:54:24.930 回答