耙子流产,不知道如何建立任务'工作:工作'

时间:2012-07-20 20:56:40

标签: ruby heroku rake sinatra delayed-job

我正在努力开始我的第一个Ruby(v1.9.3p194)项目。我在Heroku上主持,并使用Sinatra和ActiveRecord。我正在尝试将delayed_job集成到我的项目中,并且遇到麻烦让rake认出工作:工作。 (是的,我知道delayed_job通常适用于rails,但据我所知,没有它可以工作。)

到目前为止,我已经使用我的gemfile / bundler安装了delayed_job(3.0.3)和delayed_job_active_record(0.3.2)宝石。因为我没有rails,所以我从delayed_job自述文件中创建了自己的迁移文件,并将其迁移。我认为这不应该导致我的问题。

从我见过的所有文档中,安装宝石应该可以解决问题。我已经尝试卸载并重新安装它们,但无济于事。我不确定还有什么可以尝试 - 也许我需要在rakefile中明确包含这些内容,但我没有看到任何表明这一点的文档。

任何帮助非常感谢。

1 个答案:

答案 0 :(得分:3)

也许我有一个真正的答案。

我做了一个简单的项目,让jobs:work显示rake -T

<强>的Gemfile

source :rubygems

gem 'delayed_job'

<强> Rake文件

require 'rake'
require 'bundler'
require Bundler.load.gems.find{|i| i.name == 'delayed_job'}.gem_dir + "/lib/delayed/tasks"

运行: $ bundle install

<强>结果:

$ rake -T
rake jobs:clear  # Clear the delayed_job queue.
rake jobs:work   # Start a delayed_job worker.