2012-08-13 78 views
4

我正在使用Rails 3.2和Devise。我想知道Devise是否提供了一個類似於密碼確認的「電子郵件(地址)確認」字段,供用戶輸入密碼字段,然後在網站發送確認電子郵件或處理註冊註冊之前輸入密碼確認字段。如果沒有,我必須添加一個email_confirmation並驗證用戶模型(在rails g設計User之後)?RAILS 3.2&設計:電子郵件確認文本框?

在此先感謝

回答

-3

假設你已經安裝了寶石,當你執行這個功能:

rails generate devise:install 

它會生成您的遷移文件,該文件將包含email_confirmation東西,你需要去你所指的方向。所有你需要做的是不是評論它。否則,我將所有其他我不需要的東西評論出來。

你指的是被稱爲可證實

模塊假設你沒有帶發現了這個還沒有,這個環節將解釋休息:

How do I set up email confirmation with Devise?

+0

這不回答他的問題。他正在尋找註冊表單中的email_confirmation字段,其工作方式與password_confirmation字段相同。 – 2013-08-30 20:09:58

+0

這個回答不對,我很害怕; 「可確認」模塊會發送電子郵件,要求用戶單擊鏈接以確認帳戶,然後才能使用該帳戶,問題人員詢問是否可以自動添加第二個電子郵件字段,該電子郵件字段必須與第一個電子郵件字段相匹配才能通過驗證。 – 2013-09-11 15:21:46

11

我還沒有發現,如果設計做你所問(這個問題指的是第二個:email_confirmation字段類似於:password_confirmation,'confirmable'似乎只與確認鏈接)有關。我不得不這樣做,以及和我想出如何使用內置的活動記錄驗證做到這一點(導軌3.2.8,2.1.2設計):

  1. 在模型中添加confirmation: true到您的電子郵件驗證和:email_confirmationattr_accessible
  2. 在您的視圖中添加一個:email_confirmation字段。

作爲一個例子,在模型中(未假設其他校驗或attr_accessibles):將使用內置的活動記錄「確認」驗證(與用於密碼)

attr_accessible :email, :email_confirmation 
validates :email, confirmation: true 

。最後,在你的觀點中,你需要添加如下內容:

<div><%= f.label :email_confirmation %> 
<%= f.email_field :email_confirmation %></div> 

可能有一種更清潔的方式,但這對我很有效。然而,迄今爲止我唯一的設計經驗是將其添加到現有模型中,但在爲您生成模型時(可能大部分是相同的),我沒有使用它。

+1

謝謝,完美的工作 – 2013-10-10 11:30:12

+1

作品像鐵軌魅力4 – tvieira 2016-04-19 15:53:59