1
我有一个我想设置电子邮件通知的rails项目。例如,如果记录X在5天内到期,则向所有者发送电子邮件。我在新用户注册时设置了电子邮件通知,但无法根据条件发送电子邮件(如果x = y,则发送电子邮件)。请帮忙!!ActionMailer - 根据日期条件在rails中发送电子邮件
我有一个我想设置电子邮件通知的rails项目。例如,如果记录X在5天内到期,则向所有者发送电子邮件。我在新用户注册时设置了电子邮件通知,但无法根据条件发送电子邮件(如果x = y,则发送电子邮件)。请帮忙!!ActionMailer - 根据日期条件在rails中发送电子邮件
您可以使用它的rake任务。将其设置在cron中以便每天执行一次。
例rake任务代码,你可以修改和使用:
task :send_reminds => :environment do
Record.all.each do |remind|
UserMailer.remind_email(record).deliver if record.expires_in(5.days)
end
end
结识新bash脚本,把它无论你想:
#!/bin/bash
cd /your/path/to/rails/app
rake send_reminds
使用crontab -e
增加你的任务的crontab。添加此行:
0 0 * * * /your/path/to/bash/script
它会在每天午夜执行它。
记得将chmod + x设置为脚本!
是cron一颗宝石?我在轨道上很新。 – 2012-04-09 18:14:24
[Cron](http://en.wikipedia.org/wiki/Cron)是一个系统守护进程,它可以在特定时间执行你的命令。我假设你在* NIX系统上。如果你在Windows上,这将是很难做到。 – methyl 2012-04-09 18:15:53
MacOS,但应用程序在Heroku上。 – 2012-04-09 18:43:25