3

都在标题中。在安全警告之后,我将我的 rails 3.2.3 更新到 3.2.11 一切正常,但我意识到延迟的作业不再发送消息,并出现错误“未知属性:队列”

我试图重新创建更新迁移: rails generate delayed_job:upgrade 但它告诉我已经存在。

4

2 回答 2

5

rake db:migrate

rails generate delayed_job:upgrade生成了迁移,但在您实际运行迁移之前,您的数据库不会被修改。

希望有帮助!

于 2013-01-24T06:55:13.517 回答
1

替代@brettish的答案,您可以自己做(我写这个是因为我遇到了同样的问题并且delayed_job:upgrade生成器对我来说是未定义的)。

在版本 3 中,queue添加了属性。

您可以按照以下步骤操作:

创建迁移 rails generate migration AddQueueToDelayedJobs

添加queue到delayed_jobs 表如下:

class AddQueueToDelayedJobs < ActiveRecord::Migration[5.1]
  def self.up
    add_column :delayed_jobs, :queue, :string
  end
  def self.down
    remove_column :delayed_jobs, :queue
  end
end

注意:我使用的是 Rails 5.1。

希望能帮助到你!

于 2017-07-10T11:38:59.123 回答