我有user
型号
class User
include Datamapper::Resource
property :id, Serial
property :password_token, String
def generate_token
self.password_token = SecureRandom.hex
self.save
end
end
和这个控制器路线:
post '/users/token_sent' do
user = User.first(email: params[:email])
if user
user.generate_token
end
redirect('index')
end
当用户填写电子邮件以从后期路由恢复密码时,我希望将password_token
属性更改为SecureRandom.hex
实例。
该方法不会将password_token
更新为用户数据库。
答案 0 :(得分:0)
在这种方法中:
self.save
您正在致电save!
,但这并不能保证会成功。
如果您想知道它为何无法保存,请改用amTimeAgo
。