我是tryong发送电子邮件给我的所有应用程序的用户。每周随时发送电子邮件
为了做到这一点,我使用任何时候。
所以我有一个文件/config/initializer/setup_mail.rb与我的配置SMTP:
ActionMailer::Base.smtp_settings = {
:tls => true,
:address => "smtp.gmail.com",
:port => "587",
:domain => "miiaou.fr",
:authentication => :plain,
:user_name => "test.cicelle",
:password => "myPasswordGoogle"
}
ActionMailer::Base.default_url_options[:host] = "miiaou.fr"
在我user.rb型号:
def self.mail_recap_semaine
@user = User.all
@user.each do |u|
UserMailer.mail_recap_semaine(u.email).deliver
end
end
在user_mailer.rb
def mail_recap_semaine(email)
mail(:to => email, :subject => "Weekly email from footyaddicts")
end
在schedule.rb(每隔10分钟,所以我可以看看它是否工作)
every 10.minutes do
runner "User.mail_recap_semaine"
end
当我在rails控制台中运行User.mail_recap_semaine我收到了很多关于我的用户的信息,但我没有收到任何邮件。
我怎么看到错误在哪里? 谢谢
我不知道这是否会导致问题 - 但它看起来好像你没有指定':from' – yas4891
而不是':tls => true'是否应该不是':enable_starttls_auto => true'? – mccannf
你把shedule.rb文件放在哪里? – roadev