RESTfulルート
ルートは、URLとHTTPメソッドを通じて、ルートを処理するコードをどのように要求するかです.RESTful、表現状態転送、ルートは、ルートがどのように働くかを定義するより構造化された方法です.RESTfulルートは、データベース内のHTTP動詞、コントローラアクション、およびCRUD操作の間のマッピングを提供します.CRUDは、データベース操作の作成、読み取り、更新、および削除(または破壊)の頭字語を表します.コントローラのアクション、またはCRUDは、次の表に示すように、取得、ポスト、プット、削除のHTTP動詞に対応します.
動詞
パス
コントローラー
使用する
ゲット
投稿
索引
全投稿表示
ゲット
新規ポスト
新しい
新しい投稿を作成するためのHTMLフォームを返す
ポスト
投稿
創建
新しい投稿を作成
ゲット
/投稿/ID
ショー
特定のポストを表示する
ゲット
/投稿/ID/編集
編集
投稿を編集するためのHTMLフォームを返す
パッチ/プット
/投稿/ID
更新
特定のポストを更新する
削除
/投稿/ID
滅亡
特定の投稿を削除
Flatiron用のRailsプロジェクトでは、RESTfulルートに加えて、入れ子になったリソースを使用しました.リソース構文は、Railsがあなたのために7つのRESTfulルートの各々を生成させる便利な方法です.
動詞
パス
コントローラー
ゲット
/投稿/PostgreSQLのID/コメント
コメントインデックス
ゲット
/post/: postsure id/comment/new
新しいコメント
ポスト
/投稿/PostgreSQLのID/コメント
さんのコメント
ゲット
/投稿/Postfix ID/コメント/ID
コメントします
ゲット
/投稿/Postfix ID/コメント/編集
コメントは
パッチ/プット
/投稿/Postfix ID/コメント/ID
コメント最新版
削除
/投稿/Postfix ID/コメント/ID
コメントは
ネストするリソースはかなり速いので、最高の練習は1つ以上のレベル(2リソース)以上をネストすることですネストすることができます.入れ子になったリソースは親/子の関係を持たなければなりません-- POSTは親で、コメントは子です.参考先:ルートの最後のリソースは、リクエストを処理するコントローラです.
アプリケーションのルートを確認したい場合は、サーバーを実行します
リクエスト/応答フローはRESTfulルーティングを使用します.ユーザはルートに対してリクエストを行う.アプリケーションは、config/routeに入ります.RBはコントローラ/アクションへのルートと一致します.アクションのロジックが処理され、コントローラがモデルと対話することがあります.Railsは、与えられたデータを持つアクションに関連付けられたビューをレンダリングします.
動詞
パス
コントローラー
使用する
ゲット
投稿
索引
全投稿表示
ゲット
新規ポスト
新しい
新しい投稿を作成するためのHTMLフォームを返す
ポスト
投稿
創建
新しい投稿を作成
ゲット
/投稿/ID
ショー
特定のポストを表示する
ゲット
/投稿/ID/編集
編集
投稿を編集するためのHTMLフォームを返す
パッチ/プット
/投稿/ID
更新
特定のポストを更新する
削除
/投稿/ID
滅亡
特定の投稿を削除
Flatiron用のRailsプロジェクトでは、RESTfulルートに加えて、入れ子になったリソースを使用しました.リソース構文は、Railsがあなたのために7つのRESTfulルートの各々を生成させる便利な方法です.
# config/routes.rb
Rails.application.routes.draw do
resources :posts
end
The resources: posts
我々のルートで.Rbファイルを使用すると、アプリケーションの7つのRESTfulルートが表示されます.私のアプリケーションにコメントモデルがあるとしましょう.コメントはポストに属します、そして、ポストには多くのコメントがあります.私がポストコメントを見るルートが欲しかったならば/posts/1/comments
, 入れ子になったリソースを利用する必要があります.# config/routes.rb
Rails.application.routes.draw do
resources :posts do
resources :comments
end
end
我々のルートで.Rob file私たちの巣はリソースを作成し、リソースを作成します.コメントは7つのRESTfulルートを取得しますが、コメントは7ネストのRESTfulルートを取得します.動詞
パス
コントローラー
ゲット
/投稿/PostgreSQLのID/コメント
コメントインデックス
ゲット
/post/: postsure id/comment/new
新しいコメント
ポスト
/投稿/PostgreSQLのID/コメント
さんのコメント
ゲット
/投稿/Postfix ID/コメント/ID
コメントします
ゲット
/投稿/Postfix ID/コメント/編集
コメントは
パッチ/プット
/投稿/Postfix ID/コメント/ID
コメント最新版
削除
/投稿/Postfix ID/コメント/ID
コメントは
ネストするリソースはかなり速いので、最高の練習は1つ以上のレベル(2リソース)以上をネストすることですネストすることができます.入れ子になったリソースは親/子の関係を持たなければなりません-- POSTは親で、コメントは子です.参考先:ルートの最後のリソースは、リクエストを処理するコントローラです.
/posts/:post_id/comments/new
特定のポストに属する新しいコメントを作成するための新しいアクションは、コメントコントローラで処理されます.注意すべきことは、入れ子になった子リソースはネストされたRESTfulルートである.あなたがそのようなルートを望むならば/comments/:id
, /comments/new
, or /comments/edit
, コメントリソースをconfig/routeに含める必要があります.Robファイルはコメントの非ネストRESTfulルートを取得します.# config/routes.rb
Rails.application.routes.draw do
resources :posts do
resources :comments
end
resources :comments
end
私のプロジェクトでは、目的地の下に旅程があったので、目的地に関するすべての旅程を破壊することができました.# config/routes.rb
Rails.application.routes.draw do
resources :destinations do
resources :itineraries do
delete: destroy_all, on: :collection
end
end
end
追加delete: destroy_all, on: :collection
, Italariesコントローラ内のDestroyCallすべてのアクションを作成し、ユーザーに属する現在のDestinationRange IDの下にあるすべての旅程を削除できます.これは、コレクションを削除し、保存することができます役立つアクションですitineraries#destroy
単一の旅程を削除するルート.アプリケーションのルートを確認したい場合は、サーバーを実行します
/rails/info/routes
または走るrails routes
現在のルートを表示するターミナルで.こちらがガイドですnested resources を参照してください.リクエスト/応答フローはRESTfulルーティングを使用します.ユーザはルートに対してリクエストを行う.アプリケーションは、config/routeに入ります.RBはコントローラ/アクションへのルートと一致します.アクションのロジックが処理され、コントローラがモデルと対話することがあります.Railsは、与えられたデータを持つアクションに関連付けられたビューをレンダリングします.
Reference
この問題について(RESTfulルート), 我々は、より多くの情報をここで見つけました https://dev.to/anglam/restful-routes-in-rails-107eテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol