2015-07-21 3 views
0

У меня есть маршрут для выполнения запросов к модели «Service»:рельсов, проходящие несколько Params к контроллеру

resources :services, :path => 'services' 

Когда запросы GET на пути /services/sn-uber я беру пары зп (имя службы), и найти его в базе данных. Как добавить туда другой параметр, например sd (service-district)?

Например, /services/sn-uber/sd-brooklyn или /services/sd-brooklyn, поэтому любой параметр может быть опущен.

+0

Ваш вопрос непонятен. Как я понимаю из вашего вопроса. Вы можете передать несколько параметров, например '/ services/sn-uber? Service-district = sd-brooklyn' –

+0

Да, с параметрами запроса Я могу сделать это легко, но как обойтись без них? (для целей SEO) – pvf

+0

'/ services /: id (/: id_2)' он позволит вам передать 2 или один идентификатор на этом маршруте –

ответ

1

Добавить что-то вроде этого, чтобы ваши маршруты:

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

Если вы хотите сохранить свой адрес, как этот /services/sn-uber/sd-brooklyn:

get 'services(/:sn_name)(/:sd_name)', controller: 'services', action: 'show' 

 Смежные вопросы

  • Нет связанных вопросов^_^