是否可以将名为route的rails中的 Controller 值作为参数,我可以在运行时传递该参数以将调用定向到正确的 Controller ?
例如 map.ride 'ride' ,:controller => {某种指定参数的方式}, :action => 'ride'
然后在运行时,我想传递此调用应该进行的 Controller 名称。我的操作正在执行不同的操作,具体取决于发送调用的 Controller 。 谢谢
最佳答案
Thomas'答案是正确的,但是如果您希望 URL 格式更加灵活,您可以指定多个路由并使用 route requirements通过在每个上放置 :requirements
。仅当满足要求时,该路线才会匹配。例如:
map.resources :rides, :path_prefix => '/:option',
:requirements => { :option => /one/ }, :controller => 'one'
map.resources :rides, :path_prefix => '/:option',
:requirements => { :option => /two/ }, :controller => 'two'
然后:
/one/rides
将转到 OneController
/two/rides
将转到 TwoController
关于ruby-on-rails - Rails 命名为routes + Controller 作为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2912002/