1

因此,在我从控制台运行的应用程序路径中:

rake jobs:work

它回应:

Starting job worker

但是,它一直是空的,此后仅此而已,而且我很确定,每次延迟作业开始时都应该有日志。

例如方法:

def decline_vote
    @test=Test.find(params[:id])
    @vote=current_user.votes.find_by_test_id(@test.id)
    Test.delay.update_rating(@test,@vote)
    if @vote.positive
      @positive=true
    else
      @positive=false
    end
    @vote.delete
    respond_to do |format|
      format.js{[@test, @positive]}
    end

和模型方法:

def self.update_rating(test,vote)
  if vote.positive
    test.update_attribute(:rating,test.rating-1)
  else
    test.update_attribute(:rating,test.rating+1)
  end
end

而且这种方法不起作用:测试评级没有更新。

另外,我试图在模型方法中故意放一个错误,比如nil.compact!,只是为了找出方法是否正在运行,什么都没有。

并且有SQL记录:

SQL (66.0ms)  INSERT INTO "delayed_jobs" ("attempts", "created_at", "failed_at", "handler", "last_error", "locked_at", "locked_by", "priority", "queue", "run_at", "updated_at")// so on
4

0 回答 0