1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Rails】ストロングパラメーター

Posted at

#基本形

memo_controller.rb
private
def memo_params
  params.require(:キー(モデル名)).permit(:カラム名1, :カラム名2, ・・・).merge(カラム名: 入力データ)
end

#requireメソッド

requireメソッドを使用することで、params内の特定のキーに紐づく値だけを抽出できます。
引数には取り出したい値のキー(テーブル名)を指定する必要があります。

#permitメソッド

permitメソッドを使用することで、許可された値のみを取得することができます。
引数には登録を許可する全てのカラム名を指定する必要があります。

#mergeメソッド

mergeメソッドを使用することで、ハッシュ同士を結合することができます。
paramsに含まれない値(user_id: current_user.idなど)をストロングメソッドに加えたい場合など、
ストロングパラメーターの後に記述することができます。

#privateメソッド

privateメソッドは以下に記述したメソッドはクラス外からのアクセスができないようになります。
基本的にストロングパラメーターは、クラス外からのアクセスをさせないようにprivate配下に書きます。

1
0
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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?