0

我正在使用 Michael Hartl 编写的 Ruby on Rails 教程 3.2 版中的标题助手,并且刚刚意识到 & 字符在标题中显示为 &Amp; 反而。

相关代码片段在这里Official Sample App 2nd Edition


问题。我有一个 School 模型,并在 Show 视图中使用 School 名称,如下所示:

<% provide(:title, @school.name) %>

如果我的学校名称中有 &,则将其替换为 &Amp; 在浏览器标题中。


Ryan Bates Railscasts 站点有一个类似的标题帮助程序,可以通过这种方式解决此问题, 但它使用的是content_for而不是provide


尝试调整 Rails 教程助手,但无法使其正常工作。非常期待这个问题。

4

1 回答 1

1

您可以修改 page_title 帮助器并添加html_safe到输出字符串中,这样就不会转换 & 符号并使它们保持原样

def full_title(page_title)
  base_title = "Ruby on Rails Tutorial Sample App"
  if page_title.empty?
    base_title.html_safe
  else
    "#{base_title} | #{page_title}".html_safe
  end
end
于 2012-10-28T17:17:57.163 回答