【Rails】form_withについて
はじめに
form_withがどのようなHTMLに変換されてコントローラーに渡されているのか気になったので調べてみました。
form_withはどのようなHTMLに変換されているのか?
こちらが先ほどのform_withがHTMLに変換されたものです。
元のソースでは送り先をurl: articls_path(名前付きルート)と指定しているだけですが、変換後ではaction="/articles"で場所を指定しmethodはpostメソッドが指定されています。この設定で、コントローラではcreateアクションが実行されます。また、lavelタグやinputタグの属性も自動で値が入っています。inputタグのname属性と入力者が入れた値がマッチしてデータが送られます。こうすることによって、コントローラーではparams[:title]やparams[:text]で値がとれるようになるんですね。