1
我试图访问我的Rails应用程序中的资源,我想根据URL中的变量填充信息。鉴于网址:Rails:在URL中传递变量
someapp.com/resources/variable/resource
我想给variable
传递到Rails的添加元素,以resource
。是否有任何快速重新布线的方式来实现这一目标?还是它非常复杂?
干杯!
我试图访问我的Rails应用程序中的资源,我想根据URL中的变量填充信息。鉴于网址:Rails:在URL中传递变量
someapp.com/resources/variable/resource
我想给variable
传递到Rails的添加元素,以resource
。是否有任何快速重新布线的方式来实现这一目标?还是它非常复杂?
干杯!
这不应该是“疯狂复杂”,但它不是很清楚你想完成什么。
你可以尝试添加路由具有可变段:
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
操作。
这是给我的线索,是的。但是如果“资源/资源”已经存在,它似乎不起作用。在我的'routes.rb'中,我已经有'resources:resources'。 –
查看我的更新。另外,资源对于资源来说是一个非常糟糕的名字。您的资源应具有特定的名称,以匹配它们代表的内容。 – meagar
啊,那真是太棒了!干杯。我的资源没有被命名,我只是用它来举例。其结果是远比应该复杂得多。 –