LoginSignup
0
1

More than 3 years have passed since last update.

【Rails】form_withについて

Last updated at Posted at 2021-02-15

form_withとは

railsで情報を送信するためのヘルパーメソッド。簡単に入力に必要なHTMLを作成することができる。

基本的な書き方

入力された情報をデータベースに保存しない時

<%= form_with url: "パス" do |f| %>
  フォーム内容
<% end %>

入力された情報をデータベースに保存する時

<%= form_with model: "モデルクラスのインスタンス" do |f| %>
  フォーム内容
<% end %>

引数に指定しているモデルクラスのインスタンスとは、保存したいテーブルのクラスのインスタンス。
今回はmemoというテーブルに新たにレコードを作成したいため、コントローラー側で以下の記述をします。

def new
  @memo = Memo.new
end

この@memoをform_withの引数に指定します。この、コントローラーで作成したインスタンスがnewメソッドで新たに生成されて、何も情報を持っていなければ自動的にcreateアクションへ、findメソッドなどで生成され、既に情報を持っている場合はupdateアクションへ自動的に振り分けてくれるようです(便利)。

フォーム内容の記述方法

form_withで使用できるHTMLタグを記述していきます。

Center align Left align
f.text_field 1行のテキストフォーム
f.text_area 複数行のテキストフォーム
f.date_select 日付選択ボックス生成
f.number_field 数値入力のボックスを生成
f.submit 送信ボタンの生成

他にも多数ありますが、現状使用したもののみをピックアップしてみました。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1