次のコードを調べています。
Helloworld::Application.routes.draw do
match 'products/:id/purchase' => 'catalog#purchase'
resources :products do
member do
get 'short'
post 'toggle'
end
collection do
get 'sold'
end
end
end
URL が舞台裏でコントローラにどのようにマッピングされているか、誰か説明できますか?
私がそれを理解する方法:
- ラックからのリクエスト オブジェクトが入ってきます。
draw
そのコード ブロックを評価します。match
、resources
などは と同じスコープで定義されているdraw
ため、これらの関数は次々と実行され、Request に一致しようとします。それらのいずれかがそうする場合、それは右コントローラー アクションを呼び出します。
これは正しいです?
ありがとう!