1. ホーム
  2. ruby-on-rails

[解決済み】Railsのnewとcreateの比較

2022-04-13 18:58:45

質問

なぜ、RESTfulコントローラで新しいメソッドを定義し、その後にcreateメソッドを定義する必要があるのでしょうか?

Googleで検索しても、探している答えは出てきませんでした。違いは理解しているが、なぜそのような使い方をするのかが知りたい。

どのように解決するのですか?

RailsのRESTの実装の中で 新しい 作成 は別扱いです。

へのHTTP GETは /resources/new は、新しいリソースを作成するのに適したフォームをレンダリングすることを意図しています。 新しい アクションを実行し、新しい未保存のレコードを作成し、フォームをレンダリングします。

へのHTTP POSTは /resources の一部として作成されたレコードを受け取ります。 新しい アクションに渡し、それを 作成 アクションを実行し、それをデータベースに保存しようとします。