在Rails 4中排列空参数的路由

时间:2014-09-20 07:59:17

标签: ruby-on-rails ruby-on-rails-4 routes

我希望能够为可能发生的空参数的所有可能排列调用路径和帐户。

例如,如果不包括param1:

match 'site//:param2/:param3'

或者只包括param3等:

match 'site///:param3'

我是否必须单独指定每个案例,或者只有一个路径定义是否有更优雅的方法?

可选参数不起作用,例如:param1被称为' //'将成为:param2等。

1 个答案:

答案 0 :(得分:0)

Wildcards

看起来像是您使用route wildcards的情况:

enter image description here


所以也许你可以做这样的事情:

#config/routes.rb
get "*params, to: "controller#action"

#app/controllers/controller_controller.rb
class ControllerController < ApplicationController
    def action
       params = params[:params].split("/") #-> params[1] etc etc
    end
end

我想有点讨厌,但是如果你能让它发挥作用,那么你将处于一个更强大的位置来详细说明它。向前推进。