如何手动加密设计密码到大量插入sql数据

时间:2016-03-28 22:42:30

标签: ruby-on-rails devise

我想构建一个sql查询来将我的用户插入数据库,并将用户密码设置为' password',是否有一种设计默认方式来生成加密密码?说我想要密码是密码'。

3 个答案:

答案 0 :(得分:1)

您只需在模型上调用password_digest受保护的实例方法即可。假设你的模型是User,明文密码是你要做的“plaintextpassword”:

User.send(:password_digest, "plaintextpassword")

此处有更多详情:https://github.com/plataformatec/devise/blob/master/lib/devise/models/database_authenticatable.rb#L152

答案 1 :(得分:1)

我不得不在实例对象上调用:password_digest

User.new.send(:password_digest, 'password')

答案 2 :(得分:0)

Devise::Encryptor.digest(User, "password")

将帮助您避免必须初始化User对象