2013-02-26 2 views
0

В файле маршрутов добавленные другими коллегами я вижу вещи, как это:Хорошая практика в Rails 3 Пути маршрутизации

match 'providers/:provider_id/scorecards', to: 'scorecard#show', via: :get 
    match 'patients/:id/summary', to: 'patients#show', via: :get 

, чтобы они не определили «ресурсы» в файле маршрута. Просто так.

Действительно ли это правильно?

ответ

0

resources - это просто простой способ объявления маршрутов RESTful. Однако они следуют шаблону по умолчанию. В случае ваших коллег они объявили пользовательский маршрут, поэтому URL-адрес будет выглядеть иначе, чем обычный. Это может быть согласованность некоторых других маршрутов, которые они выполняют, или из-за внешнего API или стороннего приложения, запрашивающего определенный URL-адрес, к которому они должны приспособиться.

Первый маршрут может быть представлен по-разному, так как он выглядит как вложенной ресурс

resources :providers do 
resources :scorecards 
end 

Второй match определенно выглядит более строгим.

+0

, который лучше:/providers/_idParam/scorecards ИЛИ поставщик/системы показателей/_idParam? – 2013-02-26 02:06:19

+0

также еще один вопрос: нужен ли каждому «ресурсу» новый «контроллер»? – 2013-02-26 02:07:01