Ruby on rails 按时间表发送电子邮件
我需要按照管理员指定的时间表发送邮件。管理员可以指定两天内发送邮件。通过管理界面指定的天数,即公司活动终止前的天数 对此,我将使用Ruby on rails 按时间表发送电子邮件,ruby-on-rails,ruby-on-rails-4,Ruby On Rails,Ruby On Rails 4,我需要按照管理员指定的时间表发送邮件。管理员可以指定两天内发送邮件。通过管理界面指定的天数,即公司活动终止前的天数 对此,我将使用DelayedJob class Email < ActiveRecord::Base belongs_to :campaign end class CreateEmails < ActiveRecord::Migration def change create_table :emails do |t| t.integer
DelayedJob
class Email < ActiveRecord::Base
belongs_to :campaign
end
class CreateEmails < ActiveRecord::Migration
def change
create_table :emails do |t|
t.integer :days1
t.integer :days2
t.timestamps
end
end
end
class Campaign < ActiveRecord::Base
has_many :emails
def end_time
created_at + ends_at.day
end
end
class电子邮件
方法end\u time
确定您何时完成公司的活动
在数据库中的这个字段结束,以在创建公司时填充管理员。作为替代,您可以创建一个rake任务来调用发送电子邮件的方法,还有一个漂亮的小宝石叫做,它可以用来设置cron以实现流程的自动化作为替代方案,您可以创建一个rake任务来调用发送电子邮件的方法,有一个漂亮的小gem叫做,它可以用来设置cron以实现流程的自动化作为替代方案,您可以创建一个rake任务来调用发送电子邮件的方法,有一个漂亮的小gem叫做,这可以用来设置cron以实现流程的自动化作为替代方案,您可以创建一个rake任务来调用发送电子邮件的方法,还有一个漂亮的小gem,它可以用来设置cron以实现流程的自动化我不太确定您到底在问什么。您是否不确定如何使用DelayedJob
?为什么要使用延迟作业?对于日程安排?@Johnnagele还有什么其他选择?我更喜欢DJ。我不太确定你在问什么。您是否不确定如何使用DelayedJob
?为什么要使用延迟作业?对于日程安排?@Johnnagele还有什么其他选择?我更喜欢DJ。我不太确定你在问什么。您是否不确定如何使用DelayedJob
?为什么要使用延迟作业?对于日程安排?@Johnnagele还有什么其他选择?我更喜欢DJ。我不太确定你在问什么。您是否不确定如何使用DelayedJob
?为什么要使用延迟作业?对于日程安排?@Johnnagele还有什么其他选择?我更喜欢DJ。问题是管理员在发送电子邮件时设置时间。@user3458697管理员会为每个公司单独发送时间吗?为所有公司发送时间吗。管理员可以更改时间。最佳做法是编写一个Rake任务,如前所述,该任务会定期检查自上次运行任务以来是否需要向任何公司发送电子邮件,假设您计划每15分钟运行一次任务,那么您将检查是否有结束时间为time.now-15.minute的记录,并向其发送电子邮件。问题是管理员在发送电子邮件时设置时间。@user3458697管理员是否会为每个公司单独发送时间?为所有公司发送时间。管理员可以更改时间。最佳做法是编写一个Rake任务,如前所述,该任务会定期检查自上次运行任务以来是否需要向任何公司发送电子邮件,假设您计划每15分钟运行一次任务,那么您将检查是否有结束时间为time.now-15.minute的记录,并向其发送电子邮件。问题是管理员在发送电子邮件时设置时间。@user3458697管理员是否会为每个公司单独发送时间?为所有公司发送时间。管理员可以更改时间。最佳做法是编写一个Rake任务,如前所述,该任务会定期检查自上次运行任务以来是否需要向任何公司发送电子邮件,假设您计划每15分钟运行一次任务,那么您将检查是否有结束时间为time.now-15.minute的记录,并向其发送电子邮件。问题是管理员在发送电子邮件时设置时间。@user3458697管理员是否会为每个公司单独发送时间?为所有公司发送时间。管理员可以更改时间。最佳做法是编写一个Rake任务,如前所述,该任务会定期检查自上次运行任务以来是否需要向任何公司发送电子邮件,假设您计划每15分钟运行一次任务,然后您将检查是否有任何记录的结束时间在time.now-15.minute,并将电子邮件发送给他们。