如何在Rails 3中生成带尾部斜杠的链接?

我将现有的网站从PHP移植到Ruby on Rails 3,我必须保持url不变。

我有路线:

get 'companies/' => 'companies#index', :as => :companies 

在视图文件中我有:

 link_to 'Companies', companies_path 

这会生成URL“http://website.com/companies”而不是“http://website.com/companies/”。

我希望url末尾有斜杠。 可能吗?

您可以将其添加到您的application.rb:

 config.action_controller.default_url_options = { :trailing_slash => true } 

这样,所有路径都将自动生成尾部斜杠,无需修改项目中的每个链接。

只需按以下步骤操作:

 link_to 'Companies', companies_path(:trailing_slash => true) 

文档在这里。

我找不到任何引用,但添加trainling_slash: true也适用于路由定义(并避免重复自己)。

 get 'companies/' => 'companies#index', :as => :companies, :trailing_slash => true 

这是使用Rails 3.2.13测试的:

 rails c 1.9.3p327 :005 > app.companies_path => "http://www.example.com/companies/ 

对于rails 3.2:

 Rails.application.routes.default_url_options[:trailing_slash]= true