我使用devise與rails 3.在用戶模型中,我創建了問題和答案的字段。Rails 3.0設計重置通過回答問題的密碼
我想知道我如何能實現忘記下面的邏輯密碼:
- 在忘記密碼的頁面用戶輸入用戶名
- 在下一步應用程序應該顯示存儲在數據庫的問題。
- 如果答案與存儲在數據庫中的值相匹配,用戶將回答問題並且應用程序匹配答案。
- 它重定向到編輯可更新密碼的密碼頁面。
我試圖覆蓋設計的密碼控制器,但卡住了。
感謝您的幫助。
注:我是新來的導軌和我的第一個項目
我使用devise與rails 3.在用戶模型中,我創建了問題和答案的字段。Rails 3.0設計重置通過回答問題的密碼
我想知道我如何能實現忘記下面的邏輯密碼:
我試圖覆蓋設計的密碼控制器,但卡住了。
感謝您的幫助。
注:我是新來的導軌和我的第一個項目
其實我已經不是以前使用的設計,但是假設你有你的控制器線路上的befor_filter到設計驗證,你可能做這樣的事情:
skip_before_filter :authenticate_with_devise if user_answered_question_correctly?
這種寶石有security_questionable功能,它會做的伎倆,除其他事項外https://github.com/phatworx/devise_security_extension
你有沒有試過這個包?我一直無法獲得security_questionable功能。當我嘗試創建問題時,我得到「無法批量分配受保護的屬性」。 – 2015-10-02 21:49:57
你並不需要重寫Devise
這一點。
forget_password
路線:在routes.rb
:
app/controller/passwords_controller.rb
,並通過表格填寫你想要的邏輯/渲染。forgot password
鏈接到您自己的。
你能提供一些代碼嗎?你有什麼,有什麼不工作等... – polarblau 2011-01-26 15:10:39