備忘録(Ruby)
Ruby
params.require(:モデル).permit(:カラム)
Rails 4以降のストロングパラメータという新機能
フォームの入力などをPOSTで受け取る時のパラメータを制限するようなもので、予期せぬパラメータを受け取らないようなセキュリティとなる
controllerにて記述
例
# nameとemailを属性にもつUserモデルが定義済みだとする # フォームで{ "name": "hoge"," email": "mail@mail.com", "password": "1234qwer" }がPOSTでsubmitされた場合 # その1: nameというパラメータしか受け取らない def user_params params.require(:user).permit(:name) end => { name: "hoge" } # その2: nameとemailというパラメータしか受け取らない def user_params params.require(:user).permit(:name, :email) end => { name: "hoge", email: "mail@mail.com" }