deviseで追加カラムを設定した話
こんにちは!今日は久々のアウトプットタイムです!
テックキャンプでは残り19日となりました!
個人アプリ開発コツコツ進めています☺️
それでは今回はdeviseを使ったユーザー管理の実装中にハマったエラーをお話したいと思います。
ログイン機能を実装したく無事deviseのインストールをし、バリデーションの設定をしました。
app/models/user.rb
validates :nickname, presence: true
追加でnicknameカラムを追加していたので、そちらのバリデーションも設定。
そして投稿フォームを入力して送信すると「nicknameが空なので登録できません」
と言うエラーメッセージが表示。
ここで言うエラー文とはrailsのエラーでは無く、個人で設定したエラーテンプレートの事です。
nickname欄を埋めても空という表示なので、上手く表示がされていないことに気がつきました。
そこで思い出しました。 追加カラムのストロングパラメータ設定していなかった、
app/controllers/application_controller
private
def configure_permitted_parameters
end
こちらで新規登録の際にnicknameカラムの保存を許可します
before_action :configure_permitted_parameters, if: :devise_controller?
そしてこちらでdeviseのコントローラーが動いた際にアクションが動くように
設定してあげるとOK!!
これで無事ユーザー登録が完了できました!
deviseは本当に優秀なので全てを任せてしまいますが、中での処理を理解することは
やっぱり大切だなと実感しました泣
これからも目標に向かい積み上げていきます!