我没有弄清楚如何在开发环境中从gmail发送邮件。它没有发送电子邮件。我对导轨指南一无所知,也不知道生产环境是否相同?
配置/ development.rb
config.action_mailer.raise_delivery_errors = true
config.action_mailer.default_url_options = { :host => 'something.com' }
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
address: 'smtp.gmail.com',
port: 587,
domain: 'mail.google.com',
user_name: 'myusername@gmail.com',
password: 'mypassword',
authentication: 'plain',
enable_starttls_auto: true }
·邮寄包装/ user_mailer.rb
default :from => 'something.com'
def welcome_email(user)
@user = user
@url = 'http://something.com'
mail(to: @user.email, subject: 'Welcome')
end
我打电话给用户创建方法
UserMailer.welcome_email(@user).deliver_now
答案 0 :(得分:2)
config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors = true
在development.rb
中尝试此操作。它将在控制台中发送邮件或发送传递错误。
答案 1 :(得分:0)
您可以通过两种方式拨打电子邮件方式发送电子邮件,
在UsersController
的{{1}}行动
create
在def create
#your codes and logics to save user...
UserMailer.welcome_email(@user).deliver_now
#your codes goes here ...
end
模型User
回调
after_create
我更喜欢第二个用于发送电子邮件,而不是在控制器中使用模型回调。