是否可以在中關閉密碼確認bcrypt-ruby(has_secure_password) gem?has_secure_password中的可選密碼確認
回答
更改密碼驗證只能在創建操作。
validates :password, presence: true,
length: { minimum: 6 },
on: :create
has_secure_password
實際上是ActiveModel的一部分,它本身不是寶石。 bcrypt gem只是用來散列password_digest屬性。
的has_secure_password方法其實很短(source here),幷包含需要密碼才能證實一行:
# File activemodel/lib/active_model/secure_password.rb, line 34
validates_confirmation_of :password
validates_presence_of :password_digest
因此,覆蓋在你的config /初始化創建一個修改版本的has_secure_password方法文件夾應該工作。註釋掉「validates_confirmation_of」行會關閉密碼確認。你也可以重寫這個方法,當然,就像你試圖在你的問題中那樣做一個選項哈希。
請問什麼是重寫has_secure_password方法的步驟? – medBo 2013-07-31 01:42:56
如果您根本不需要密碼確認,您可以簡單地不設置:password_confirmation字段並且不會觸發驗證。
點擊這裏瞭解更多:https://github.com/rails/rails/pull/5131
軌道4,5編輯:由於大力引進PARAMS這是不相關了。只需從註冊表單中刪除確認字段,參數就不會通過。
感謝您發佈這個! – LandonSchropp 2013-05-14 07:07:04
- 1. rails 4 has_secure_password渲染密碼確認可選
- 2. 可選密碼確認Authlogic
- 3. 密碼和確認密碼
- 4. 密碼確認
- 5. 確認當前密碼,新密碼並確認新密碼
- 6. 如何在使用has_secure_password時讓用戶確認其當前密碼?
- 7. 的jQuery:密碼和確認密碼
- 8. 的XForms密碼確認密碼
- 9. 密碼確認Javascript
- 10. 與密碼確認
- 11. jqGrid - 密碼確認
- 12. 確認密碼PHP
- 13. jqGrid密碼確認
- 14. Extjs確認密碼
- 15. 在rails中使可選的has_secure_password 3.2.13
- 16. ASP.NET密碼和確認密碼在ClientSideEvents
- 17. 驗證密碼和確認密碼NG2
- 18. 密碼確認密碼驗證檢查
- 19. Rails - 帶密碼和密碼的has_secure_password - password_digest限制
- 20. has_secure_password驗證密碼更新驗證
- 21. has_secure_password密碼不能空白rails 4.1
- 22. Rails使用has_secure_password自動生成密碼
- 23. 獲取密碼不能爲空與has_secure_password
- 24. 在角度2中的密碼確認
- 25. MVC3中的確認密碼問題
- 26. 驗證確認密碼?
- 27. jquery確認密碼驗證
- 28. 確認密碼快遞
- 29. AngularJS確認密碼驗證
- 30. ASP:NET確認密碼字段
請注意,如果您這樣做,並且您有一種機制允許您的用戶更改其密碼(例如忘記密碼),則他們將能夠設置太短的新密碼。原因是長度驗證不會在密碼更新時啓動。 – 2014-07-03 09:55:22