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

发布于 2024-11-17 16:47:34 字数 348 浏览 2 评论 0原文

我正在将现有网站从 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/”。

我想要在网址末尾添加斜线。是否可以?

I'm porting the existing website from PHP to Ruby on Rails 3 and I have to keep the urls unchanged.

I have the route:

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

In a view file I have:

link_to 'Companies', companies_path

and this generates the url "http://website.com/companies" instead of "http://website.com/companies/".

I want the slash at the end of the url. Is it possible?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

如果没结果 2024-11-24 16:47:34

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

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

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

You can add this to your application.rb:

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

This way all routes will be generated with a trailing slash automatically, with no need to modify each link in your project.

初懵 2024-11-24 16:47:34

只需执行以下操作:

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

此处的文档。

Simply do as follows:

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

Documentation here.

來不及說愛妳 2024-11-24 16:47:34

我找不到任何参考,但将 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/

I couldn't find any references, but adding trainling_slash: true to the route definition also works (and avoids repeating oneself).

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

This was tested with Rails 3.2.13:

rails c
1.9.3p327 :005 > app.companies_path
=> "http://www.example.com/companies/
绾颜 2024-11-24 16:47:34

对于 Rails 3.2:

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

For rails 3.2:

Rails.application.routes.default_url_options[:trailing_slash]= true
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文