我是通过铁路发送邮件的新手。我已经在我的项目中实现了设计,现在我想发送一封欢迎电子邮件和/或密码重置电子邮件。我需要在Devise视图中做出哪些更改? 没有显示错误,但我仍然没有收到任何电子邮件。
我已按照下面指定的链接,最后我的devise.rb,development.rb和production.rb文件如下:
devise.rb
config.mailer_sender = "abc@gmail.com"
development.rb
config.action_mailer.raise_delivery_errors = false
config.action_dispatch.best_standards_support = :builtin
config.active_support.deprecation = :notify
config.action_mailer.delivery_method = :smtp
config.action_mailer.perform_deliveries = false
config.action_mailer.raise_delivery_errors = true
config.action_mailer.default :charset => "utf-8"
config.action_mailer.default_url_options = { :host => 'localhost:3000' }
config.active_support.deprecation = :log
config.action_mailer.smtp_settings ={
:enable_starttls_auto => true,
:address => 'smtp.gmail.com',
:port => 587,
:tls => true,
:domain => 'gmail.com',
:authentication => :plain,
:user_name => 'abc@gmail.com',
:password => '123456'
}
production.rb
config.action_mailer.default_url_options = { :host => 'gmail.com' }
config.active_support.deprecation = :notify
config.action_mailer.delivery_method = :smtp
config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors =false
config.action_mailer.default :charset => "utf-8"
config.action_mailer.smtp_settings = {
:enable_starttls_auto => true,
:address => 'smtp.gmail.com',
:port => 587,
:tls => true,
:domain => 'gmail.com',
:authentication => :plain,
:user_name => 'abc@gmail.com',
:password => '123456'
}
答案 0 :(得分:2)
尝试在development
环境中使用rails发送电子邮件时,您会在development
的配置文件中看到,有一行config.action_mailer.perform_deliveries = false
指定邮件是否实际存在交付。
当您创建一个新的rails项目时,该参数会自动设置为false
,如果您想在开发模式下实际发送电子邮件,则必须(除其他外)将该参数设置为{{1} }