ruby-on-rails – Rails 4强制默认路由参数包含在生成的URL中
发布时间:2020-12-17 02:06:34 所属栏目:百科 来源:网络整理
导读:我正在为可选参数的路由和默认值进行摔跤.鉴于路线: get '/product/:key(/:env(/:version))',to: 'delivery#widget_view',defaults: { env: 'live' },as: :product_view 我明白如果我给它一个版本,那么我也应该给它一个env.当我 link_to 'view it',key: 'my
我正在为可选参数的路由和默认值进行摔跤.鉴于路线:
get '/product/:key(/:env(/:version))',to: 'delivery#widget_view',defaults: { env: 'live' },as: :product_view 我明白如果我给它一个版本,那么我也应该给它一个env.当我 link_to 'view it',key: 'mykey',env: 'live',version: 6 生成的URL是 /product/mykey/6 然后最终创建params [env] = 6,并且没有版本值 如果我删除默认值或者删除()所需的:env,则生成的URL中会明确包含“live”.这是我现在的解决方案,但有一些东西让Rails给我:env当我提供:版本? 解决方法
使env param需要如下
get '/product/:key/:env(/:version)',as: :product_view 在不传递env的情况下调用product_view_path时,将使用默认值 product_view_path('mykey') => '/product/mykey/live' 你的问题是:有什么东西让Rails给我:env当我供应:版本?是的,您可以调用product_view_path并传递版本而不传递env product_view_path('mykey',version: 6) => '/product/mykey/live/6' (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |