devise4.2 strongパラメータの記述ルールが変わった
たとえば、deviceの新規登録画面で、nicknameカラムを追加する場合
dbに nicknameカラム作ったら
view/device/registration/new.html.erbで
<%= f.label :nickname %> (6 characters maximum)
<%= f.text_field :nickname, autofocus: true, maxlength: "6" %>
フィールドを追加してから
application_controller.rbに
device専用ストロングパラメータでうけとりますが
今までは
before_action :configure_permitted_parameters, if: :devise_controller? def configure_permitted_parameters devise_parameter_sanitizer.for(:sign_up) << :nickname end
4.2から
before_action :configure_permitted_parameters, if: :devise_controller? def configure_permitted_parameters devise_parameter_sanitizer.permit(:sign_up, keys: [:nickname]) end
と記述方法が変更になった。