#どういう時に使用するの?
form_with
やform_for
を利用して、ユーザーに何かを打ち込んでもらい、送信してもらいたい時に便利なメソッドです。
例えば、AmazonのようなECサイトで、ショッピングカートの商品を購入するとき。
ユーザーからすると、「確定ボタン」だけ押したいのに、再度username
やaddress
を打たなければならないのは面倒ですよね。
また、パラメーターを経由したいけれども、ユーザー側にその情報を隠しておきたい時などにも使えます。
#使い方
hidden_field
hidden_field :値の取得時に使用する名前(シンボル), :value => 実際に渡す値
#第一引数→name属性 #第二引数→value属性
アクションでhidden_field
で渡されたパラメータを受け取ることが出来ます。
ここで、controllerに記述する際に、フォームフィールドに紐づく値となっている為、記述方法は
params[:モデル名][:渡したname属性]
という形になるので、注意が必要です。
hidden_field_tag
hidden_field_tag :渡したいパラメータの値, 実際に渡す値
#それぞれの使用タイミング
hidden_field
form_withやform_forで渡すインスタンスがある場合(もしくはそれらのヘルパーを使っている場合)。
hidden_field_tag
一個だけパラメータを他のアクションへ単体で渡したい時に、独立して使用。