我必須每週向所有用戶發送關於發生的最新事情的電子郵件。我正在使用ActionMailer來完成其他郵件任務,但我不知道如何自動化每週的電子郵件。通過動作郵件自動發送郵件Rails 3.1
更新
我發現whenever寶石可能被用於調度cron作業。我想這可以用來發送我打算每週發送的電子郵件。還在尋找如何使它與工作的ActionMailer會更新一次,我找到解決辦法
更新2
這是我做了什麼至今使用whenever寶石: -
在schedule.rb
every 1.minute do
runner "User.weekly_update", :environment => 'development'
end
在users_mailer.rb
def weekly_mail(email)
mail(:to => email, :subject => "Weekly email from footyaddicts")
end
在users.rb的
def self.weekly_update
@user = User.all
@user.each do |u|
UsersMailer.weekly_mail(u.email).deliver
end
end
,如果我嘗試從控制檯運行User.weekly_update我能夠獲得郵件。我正在開發模式下測試並使用rvm。我檢查了我的crontab文件,它有正確的東西。
但是我沒有從應用程序自動收到任何郵件。任何線索可能是錯誤的?
謝謝,
我收到郵件,否則它只是當我嘗試安排在稍後發送的電子郵件時,我沒有收到任何郵件。我想這是我每次使用gem發送每週郵件的錯誤實現 –
使用此gem' –
發送電子郵件時粘貼日誌這是我在日誌/ usr/bin/env中獲得的錯誤:ruby:No這樣的文件或目錄 –