2012-07-20 66 views
0

我想要開始我的第一個Ruby(v1.9.3p194)項目。我在Heroku上託管,並使用Sinatra和ActiveRecord。我正在嘗試將delayed_job整合到我的項目中,並且遇到了惹禍找工作的麻煩:工作。 (是的,我知道delayed_job通常適用於rails,但據我所知它可以在沒有它的情況下工作。)耙中止,不知道如何建立任務'工作'

到目前爲止,我已經安裝了使用我的delayed_job(3.0.3)和delayed_job_active_record(0.3.2)gems的Gemfile /捆綁。由於我沒有rails,我從delayed_job自述文件創建了自己的遷移文件,並將其遷移。我不認爲這會導致我的問題。

從我見過的所有文檔中,安裝寶石應該可以做到。我試着卸載並重新安裝它們,但無濟於事。我不知道還有什麼可以嘗試 - 也許我需要明確包含在我的rake文件中,但是我還沒有看到任何指出這一點的文檔。

任何幫助非常感謝。

+0

請發表您的'Rakefile'的內容。有了sinatra,你不會獲得軌道上所有的免費魔法耙子任務連接。也可以嘗試'rake -T' - 它會列出耙子知道的可用任務。 – radixhound 2012-07-20 23:17:54

回答

2

也許我有一個實際的答案給你。

我做了一個簡單的項目來獲得jobs:workrake -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. 
+0

我的Rakefile包含以下內容 'require'sinatra/activerecord/rake' require'。/ app'' – 2012-07-21 17:57:51

+0

我試過了你對rakefile的建議,現在rake確實知道作業:工作。然而,現在耙子似乎在任務'環境'中被絆倒了。開始感覺我正在與Sinatra + DJ一起游泳。還沒有深入研究這個問題 - 還有其他有用的建議嗎? – 2012-07-21 18:04:32

+0

您一定會很好地瞭解Rails和Sinatra的工作方式以及它們的不同之處。至於你關於'環境'任務的問題,我不知道你在問什麼,需要更多的細節。打開一個新的SO問題呢? – radixhound 2012-07-23 16:12:04

相關問題