パスワードを更新した時に、 password_changed_atをnilにしたいです。
rails c
でnilに出来ているか確認したところ出来ていないようです。
他に記載しないといけない部分があるのでしょうか?
ご教示いただけますと幸いです。
rails cコマンド ①User.find(2)→ #<User id: 2, name_id: "test2", password_changed_at: "2022-01-04 15:47:59.000000000 +0900"> ②User.find(2).update(password:"1234name") ③User.find(2)→ #<User id: 2, name_id: "test2", password_changed_at: "2022-01-04 15:47:59.000000000 +0900">
controller.rb def update @user.update_without_current_password(user_params) @user.update(password_changed_at:nil) if @user.valid? @user.save! redirect_to admin_users_path else render action: :edit end end def user_params params.require(:user).permit( :name_id, :password ) end
db/migrate.rb t.string :name_id, null: false, default: '' t.string :encrypted_password, null: false, default: '' t.datetime :password_changed_at
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。