Ste*_*nou 1 ruby-on-rails ruby-on-rails-4
我正在尝试为我的应用程序的每个页面制作动态标题。
我的方法:在 application.html.erb 中我设置了这个:
<title><%= titles %></title>
Run Code Online (Sandbox Code Playgroud)
我在 ApplicationHelper.rb 上添加了这个
def titles
if request.original_fullpath == "/"
return "Find Web Designers and Developers • AwesomeWeb"
end
end
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
ArgumentError in HomeController#index
invalid byte sequence in US-ASCII
Run Code Online (Sandbox Code Playgroud)
我不确定这是否是一个好方法。但我想你明白我想要做什么。即使这种方法对我来说效果很好。关于如何进行这项工作的任何建议?
谢谢
有一个更好的方法:content_for.
在您的 application.html.erb 中:
<title><%= yield :title %></title>
Run Code Online (Sandbox Code Playgroud)
在你的观点中(比如,/users/new.html.erb)
<% content_for :title do %>
Create New User
<% end %>
Run Code Online (Sandbox Code Playgroud)
无需在 application_helper 中硬编码所有可能的值。