rails 将多个参数传递给控制器
rails passing multiple params to controller
我有查询"Service"型号的路线:
resources :services, :path => 'services'
当 GET 请求路径 /services/sn-uber
时,我获取参数 sn(服务名称)并在数据库中找到它。如何在那里添加另一个参数,如 sd(service-district)?
例如 /services/sn-uber/sd-brooklyn
或 /services/sd-brooklyn
所以任何参数都可以省略。
在你的路线中添加这样的东西:
get 'services(/sn/:sn_name)(/sd/:sd_name)', controller: 'services', action: 'show'
您的 url 看起来像:
/services/sn/uber/sd/brooklyn
- params 将是
sn_name
和 sd_name
/services/sn/uber
- 参数将是
sn_name
/services/sd/brooklyn
- 参数将是
sd_name
如果你想保持你的 url 那样 /services/sn-uber/sd-brooklyn
:
get 'services(/:sn_name)(/:sd_name)', controller: 'services', action: 'show'
我有查询"Service"型号的路线:
resources :services, :path => 'services'
当 GET 请求路径 /services/sn-uber
时,我获取参数 sn(服务名称)并在数据库中找到它。如何在那里添加另一个参数,如 sd(service-district)?
例如 /services/sn-uber/sd-brooklyn
或 /services/sd-brooklyn
所以任何参数都可以省略。
在你的路线中添加这样的东西:
get 'services(/sn/:sn_name)(/sd/:sd_name)', controller: 'services', action: 'show'
您的 url 看起来像:
/services/sn/uber/sd/brooklyn
- params 将是
sn_name
和sd_name
- params 将是
/services/sn/uber
- 参数将是
sn_name
- 参数将是
/services/sd/brooklyn
- 参数将是
sd_name
- 参数将是
如果你想保持你的 url 那样 /services/sn-uber/sd-brooklyn
:
get 'services(/:sn_name)(/:sd_name)', controller: 'services', action: 'show'