Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 按时间表发送电子邮件_Ruby On Rails_Ruby On Rails 4 - Fatal编程技术网

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,并将电子邮件发送给他们。