gpt4 book ai didi

ruby - 我如何使用 CouchRest 和 BCrypt 在 CouchDB 中存储密码?

转载 作者:太空宇宙 更新时间:2023-11-03 16:28:29 25 4
gpt4 key购买 nike

尽管这不是特定于 CouchDB 的,但我正在使用的库。我正在使用 couchrest_model在 Ruby 中创建如下所示的 User 模型:

class User < CouchRest::Model::Base
use_database 'sample'
property :_id, String
property :email, String
# property :password
timestamps!
end

我对此处存储的密码感到困惑。我想使用 BCrypt 但是当我做这样的事情时:

class User < CouchRest::Model::Base
include BCrypt

use_database 'sample'
property :_id, String
property :email, String
property :password, BCryptHash

timestamps!
end

我被告知 User::BCryptHash 是一个未初始化的常量。我当然需要事先使用 bcrypt 库。您能帮我解决 BCrypt 问题或建议一种在 CouchDB 中存储密码的不同方法吗?我看过 hashing passwords但是我不确定如何实现它。

最佳答案

require 'couchrest_model'

class User < CouchRest::Model::Base
include ActiveModel::SecurePassword

use_database 'sample'
has_secure_password

property :username, String
property :email, String
property :password_digest, String

timestamps!

design { view :by_email }
end

User.create(:username => 'rafalchmiel', :email => 'hi@rafalchmiel.com', :password => 'password', :password_confirmation => 'password')
User.create(:username => 'bar', :email => 'hi@bar.com', :password => 'password213', :password_confirmation => 'password213')
User.create(:username => 'foo', :email => 'hi@foo.com', :password => 'password12111', :password_confirmation => 'password12111')

关于为什么这有效的更多信息在 this GitHub Issue .

关于ruby - 我如何使用 CouchRest 和 BCrypt 在 CouchDB 中存储密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20164585/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com