7

私のアプリでは、パスワードまたは Facebook を使用して登録できます。

ユーザー モデルからパスワードの検証を削除しても、ユーザー モデルに乗り:password_digest => ["can't be blank"]ます。

私は使用しますhas_secure_password

password_digest不要にする方法を教えてください。

4

2 に答える 2

7

できません。has_secure_passwordモデルに2つのバリデーターを自動的に追加します。

validates_confirmation_of :password
validates_presence_of     :password_digest

password_digest代わりに、パスワードを持っていないユーザーにダミー値を指定してください。

user.password = user.password_confirmation = ""
user.password_digest = "facebook-authorized account"

そのダイジェストに一致するようにパスワードをハッシュすることはできないため、これは安全です。

于 2012-08-11T20:22:45.640 に答える