2011-06-24 67 views
2

請你能幫助我。我如何在設計中從本地主機發送電子郵件。比如我寫的開發環境郵件發送設計

config.action_mailer.default_url_options = { :host => 'localhost:3000' } 

不過,這並不在我的地址,例如發送電子郵件。

回答

3

您將需要設置一個初始化程序,以便您可以在開發環境中發送電子郵件。

了這個配置中:配置/初始化/ mail.rb

ActionMailer::Base.smtp_settings = { 
    :address    => "smtp.gmail.com", 
    :port     => 587, 
    :domain    => "gmail.com", 
    :user_name   => "username", 
    :password    => "password", 
    :authentication  => "plain", 
    :enable_starttls_auto => true 
} 

注:此配置是針對Gmail的,如果你不使用Gmail,您將需要修改您的SMTP客戶端的設置。

請記住,在將此文件添加到您的Rails應用程序後,您需要重新啓動服務器。

還有一個偉大的Railscast情節將幫助你here

0
#this works well 
add_column :users, :confirmation_token, :string 
add_column :users, :confirmed_at, :datetime 
add_column :users, :confirmation_sent_at, :datetime 
add_column :users, :unconfirmed_email, :string 

#But this cannot work !!! 
add_column :users, :confirmation_token, :string, :null => false, :default => '' 
add_column :users, :confirmed_at, :datetime, :null => false, :default => '1970-01-01' 
add_column :users, :confirmation_sent_at, :datetime, :null => false, :default => '1970-01-01' 
add_column :users, :unconfirmed_email, :string, :null => false, :default => '' 

看到這個問題:https://github.com/plataformatec/devise/issues/2567

我今天抓到一個問題,我花5個小時了。 當confirmation_token關係列爲空時,Devise的確認電子郵件無法工作。那麼,當列是空的,它運作良好。