我知道這是一個簡單的問題,而且問了很多次,我也問過這個問題,因爲我檢查的所有前一個都是基於rails 3.0.0版本我正在使用最新的一個。我有一個包含姓名和電子郵件字段的用戶註冊表單。我想這樣做,當用戶點擊提交按鈕時,應由用戶將電子郵件發送到指定的電子郵件地址,我正在使用rails 3.2.5版本和gem'mail'版本2.4.4開發日誌文件顯示郵件是發送到電子郵件地址,但沒有在收件箱中找到。我也知道,在開發模式下,郵件程序不會向任何地址發送郵件,但我想在開發階段執行此操作。我的代碼是:在Rails版本3.2.5中使用動作郵件發送電子郵件
/config/initializers/setup_mail.rb
ActionMailer::Base.smtp_settings = {
:address => "smtp.gmail.com",
:port => 587,
:domain => "asciicasts.com",
:user_name => "asciicasts",
:password => "secret",
:authentication => "plain",
:enable_starttls_auto => true
}
/app/mailers/user_mailer.rb
class UserMailer < ActionMailer::Base
default :from => "[email protected]"
def registration_confirmation(user)
mail(:to => user.email, :subject => "Registered")
end
end
/app/controllers/users_controller.rb
def create
@user = User.new(params[:user])
respond_to do |format|
if @user.save
UserMailer.registration_confirmation(@user).deliver
format.html { redirect_to(@user, :notice => 'User was successfully created.') }
format.xml { render :xml => @user, :status => :created, :location => @user }
else
format.html { render :action => "new" }
format.xml { render :xml => @user.errors, :status => :unprocessable_entity }
end
end
end
所以任何人都請幫助我。
http://stackoverflow.com/questions/4313177/sending-mail-with-rails-3-in-development-environment – 2012-07-26 13:17:09
默認情況下'config.action_mailer.raise_delivery_errors = false'開發環境,這意味着鐵路不會嘗試發送電子郵件,但您仍然可以在日誌文件中查看整個電子郵件以進行驗證。因此,首先將此屬性值設置爲true,重新啓動服務器並嘗試再次發送。這可以通過分析日誌來幫助您找到問題。 – 2012-07-26 16:49:11
我仍然堅持同樣的問題在發出文件development.log加入郵寄入境但不是在我的收件箱顯示我也做 config.action_mailer.raise_delivery_errors =真實的,但它不工作的建議,歡迎 – 2012-07-27 08:18:18