1

我有一条在我的应用程序中使用的路线foo_path=>/foo

现在我正在将此路由迁移到另一个应用程序,该应用程序以不同方式定义 URL 路径/deep/path,并且还以不同方式命名控制器query_paramters过去使用的路径。foo_path

我正在寻找覆盖该foo_path方法,以便现在它返回/deep/path而不是/foo在视图中调用时返回,控制器......同时转换一些查询参数名称

我在stackoverflow上找到了一些答案,但他们使用的方法似乎不再适用于 rails 4.2.7,这是我目前使用的 rails 版本。

如何foo_path在所有应用程序中覆盖方法,以便它在能够操作的同时返回/deep/path而不是/foorails 4.2.7query_parameters中返回?

4

1 回答 1

0

你需要做的是有一个命名的路线。

例如,假设您的旧路径被标识为foo并且您以foot_path.

然后你可以在 routes.rb 中做这样的事情。

'/bar', to: 'controller#action', as: :foo

这种方式foo_path现在会给/bar

参考: http: //guides.rubyonrails.org/routing.html#overriding-the-named-helpers

于 2017-10-26T06:17:34.923 回答