ruby-on-rails-3 – 基于参数的Rails路由
发布时间:2020-12-17 02:36:31 所属栏目:百科 来源:网络整理
导读:我正在开发一个Rails应用程序,我正在寻找一种方法来根据url中参数的存在路由到控制器中的不同操作. 例如,我希望website.com/model路由到#model索引,但我希望website.com/model?opt=dev路由到#model.有什么办法可以做到吗? 解决方法 使用路由约束来查看请求
我正在开发一个Rails应用程序,我正在寻找一种方法来根据url中参数的存在路由到控制器中的不同操作.
例如,我希望website.com/model路由到#model索引,但我希望website.com/model?opt=dev路由到#model.有什么办法可以做到吗? 解决方法
使用路由约束来查看请求对象并查看它是否具有URL参数.如果你正在使用宁静的路线,你想把这个“一次性”放在宁静的路线之前.像这样的东西:
get 'users' => 'users#show',constraints: { query_string: /.+/ } resources :users 所以这就是说,如果您请求“/ users?opt = dev”,那么它将符合您的特殊情况.否则,它将进入您正常的索引操作的休息路径.你的模型#show action必须知道拿起param [:opt]并用它做任何事情. 另外,请注意正则表达式是非常松散的,它只是检查任何参数…你会想要收紧它以适应你想要做的任何事情. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |