2

実際に本番モードで遅延ジョブをアクティブにしたい。だから私は「

RAILS_ENV=本番スクリプト/delayed_jobstart

「コンソールでエラーが発生しました」

:dir => File.join(dir、'tmp'、'pids')、

「未定義のディレクトリを報告します...元のファイルについてオンラインで検索しますが、見つかりません。

#!/usr/bin/env ruby
require File.expand_path(File.join(File.dirname(__FILE__), '..', 'config',   'environment'))
require 'delayed/command'
Delayed::Command.new(ARGV).daemonize
daemon_options = {
  :multiple   => false,
  :dir_mode   => :normal,
  **:dir        => File.join(dir, 'tmp', 'pids'),**
  :backtrace  => true
}

Daemons.run_proc('job_runner', daemon_options) do
  if ARGV.include?('--')
    ARGV.slice! 0..ARGV.index('--')
  else
    ARGV.clear
  end

  Dir.chdir dir
  RAILS_ENV = ARGV.first || ENV['RAILS_ENV'] || 'development'
  require File.join('config', 'environment')

  Delayed::Worker.new.start
 end
4

1 に答える 1

0

dirで置き換えてみてくださいRails.root(両方のオカレンスを置き換えます)。dir上記のコードでは、変数またはメソッドが定義されていません。上記の dir を定義することもできますdaemon_options:

dir = Rails.root
daemon_options = {
  ...
于 2012-04-24T15:27:25.960 に答える