Rails:在URL中传递变量

时间:2012-09-05 03:10:19

标签: ruby-on-rails url variables routes

我正在尝试访问我的rails应用程序中的资源,我希望根据URL中的变量填充信息。鉴于URL:

someapp.com/resources/variable/resource

我想将variable传递给Rails,以便向resource添加元素。是否有任何快速重新路由方式来实现这一目标?或者它是非常复杂的?

干杯!

1 个答案:

答案 0 :(得分:7)

这一点的任何部分都不应该“疯狂地复杂化”,但是你想要完成的事情还不是很清楚。

您可以尝试添加带有可变段的路径:

get "/resources/:variable/resource" => "controller#action"

然后,在您的控制器中,访问params[:variable]


如果您已经定义了资源,则可以通过以下方式添加其他“成员”路径:

resource :resources do
  get :resource, on: member

  # or

  member do
    get :resource
  end
end

前面的任何一个都允许您的控制器将/resources/:resource_id/resource路由到资源控制器的resource操作。