我想要一个控制器的端点,而不是处理更新Devise用户的电子邮件。理想情况下,当用户使用当前密码提交新电子邮件时,其行为就像我提交了在Devise中打包的默认edit
表单。
我已经在我的设计配置中启用了config.reconfirmable
。但是,每当我尝试输入类似的内容时,
User.find(1).update_with_password(email: 'asdf@email.com', password: 'currentpass')
在rails控制台中,它会回滚数据库更新
User Exists (0.4ms) SELECT 1 AS one FROM "users" WHERE ("users"."email" = 'asdf@email.com' AND "users"."id" != 1) LIMIT 1
当我在控制台中测试确认电子邮件时
User.find(1).send_confirmation_instructions
它按预期工作。
答案 0 :(得分:0)
阅读完文档后,您必须使用 public Response intercept(Chain chain) throws IOException {
Request request = chain.request();
Response response = chain.proceed(request);
return response;
}
作为用户密码的密钥。
current_password