在我正在開發的Rails應用程序中。我試圖通過輸入他們的電子郵件地址然後通過確認電子郵件確認他們的帳戶來添加用戶註冊的能力。我不希望用戶必須輸入任何密碼。 我會如何去做這件事?設計電子郵件只註冊 - rails
這個例子是有用的,但需要用戶輸入密碼:https://github.com/plataformatec/devise/wiki/How-To:-Email-only-sign-up
我應該自動使用一個密碼,所有用戶?
在我正在開發的Rails應用程序中。我試圖通過輸入他們的電子郵件地址然後通過確認電子郵件確認他們的帳戶來添加用戶註冊的能力。我不希望用戶必須輸入任何密碼。 我會如何去做這件事?設計電子郵件只註冊 - rails
這個例子是有用的,但需要用戶輸入密碼:https://github.com/plataformatec/devise/wiki/How-To:-Email-only-sign-up
我應該自動使用一個密碼,所有用戶?
設計爲身份驗證構建,這是一個密碼或與社交網絡的快速檢查,這實際上是他們聲稱的人。電子郵件地址用作標識。
如果你只是想確定一個人通過他們的電子郵件,我建議你創建自己的系統。如果你喜歡,你甚至可以添加一些Devise功能。首先,創建一個User
模型與電子郵件屬性:
rails generate model User email:string
一旦你遷移的數據庫,爲它創建一個控制器:
rails generate controller users
然後創建一個Session
模型,然後讓每個User
創建會話通過登錄。網絡上將會有很多很棒的教程來介紹如何創建這樣的系統。編寫助手方法如current_user
或user_signed_in?
也應該很容易。
現在最後一點,如果您希望人們在使用電子郵件確認進行註冊後登錄,您如何確保它與登錄確認電子郵件的人實際上是同一個人?任何惡意用戶都可以簡單地使用已經確認的帳戶登錄,除非您每次登錄時都必須進行確認電子郵件...
因此,雖然您可以執行上述操作,但我會認真推薦使用某種無論是使用密碼還是使用OmniAuth連接到社交網絡。對於here有一個railscast。
不知道這是否會對您有所幫助,但基於身份驗證過程的簡單性,我建議您完全不要使用Devise。您只需在SessionsController
中創建一個動作,該動作會將(或者您在您的應用中調用它)與UsersTable
中列出的電子郵件進行比較。
鏈接到一些「網絡上的精彩教程」將是有用的;) – Pak 2016-09-23 13:38:32