3

月に 1 回ジョブを実行する必要があります。いつでもgemを使用してcronで呼び出す必要があります。この場合、ジョブまたはレーキを使用しますか?

コンソールでジョブを実行できません。

レールランナー「MyJob.perform_later」

Rails 4.2を使用しています

エラー:

.rvm/gems/ruby-2.1.4/gems/railties-4.2.0/lib/rails/commands/runner.rb:62:in <top (required)>': uninitialized constant MyJob (NameError) from /Users/leonardo/.rvm/gems/ruby-2.1.4/gems/railties-4.2.0/lib/rails/commands/runner.rb:62:ineval' from /Users/leonardo/.rvm/gems/ruby-2.1.4 /gems/railties-4.2.0/lib/rails/commands/runner.rb:62:in <top (required)>' from /Users/leonardo/.rvm/gems/ruby-2.1.4/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:123:inrequire' from /Users/leonardo/.rvm/gems/ruby-2.1.4/gems/railties-4.2.0/lib /rails/commands/commands_tasks.rb:123:in require_command!' from /Users/leonardo/.rvm/gems/ruby-2.1.4/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:90:inrunner' from /Users/leonardo/.rvm/gems/ruby-2.1.4/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:39 :in run_command!' from /Users/leonardo/.rvm/gems/ruby-2.1.4/gems/railties-4.2.0/lib/rails/commands.rb:17:in' from bin/rails:4:in require' from bin/rails:4:in'

私の仕事の内容:

class MyJob < ActiveJob::Base queue_as :default

def perform()


    Veiculo.particulares.publicado.each do |veiculo|
        limite_dias  = veiculo.plano.dias_ativado
        dias_ativado = DateTime.today - veiculo.ativado_em.to_date

        if limite_dias > dias_ativado
            veiculo.update_attribute(:ativo, nil)

            VeiculoMailer.avisa_desativacao(veiculo).deliver_later 
        end
    end

end

終わり

4

0 に答える 0