получить, сопоставить и ресурсы в rout.rb - PullRequest
9 голосов
/ 12 декабря 2010

Эй, ребята, я новичок в Rails. Мне показалось очень странным, когда я использую ресурсы в rout.rb, после перенаправления страницы в контроллер / индекс, он отображает контроллер / show

Iзнаю, что GET controller/action совпадает с match "controller/action", :to => "controller/action"

Я думаю, что со мной случается странное в отношении перенаправления, похоже на GET и Match.

, поэтому мне интересно, что именно означают ресурсы, Могу ли я использовать простой матч сделать то же самое?

1 Ответ

23 голосов
/ 12 декабря 2010

resources является ярлыком для генерации семи маршрутов, необходимых для интерфейса REST .

resources :widgets эквивалентно записи

get    "widgets"          => "widgets#index",   :as => 'widgets'
get    "widgets/:id"      => "widgets#show",    :as => 'widget'
get    "widgets/new"      => "widgets#new",     :as => 'new_widget'
post   "widgets"          => "widgets#create",  :as => 'widgets'
get    "widgets/:id/edit" => "widgets#edit",    :as => 'edit_widget'
patch  "widgets/:id"      => "widgets#update",  :as => 'widget'
put    "widgets/:id"      => "widgets#update",  :as => 'widget'
delete "widgets/:id"      => "widgets#destroy", :as => 'widget'

, это просто сохраняетВам беда.

Кстати, get не совсем то же самое, что match.get, post, put и delete - это ярлыки для ограничения маршрута одним глаголом HTTP.Два определения маршрута ниже эквивалентны.

match 'foo' => 'controller#action', :method => :get
get   'foo' => 'controller#action'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...