namespace :jobs do task :environment => [:environment] do #Something cool end end
Это вызывает циклическую зависимость от :environment, от которой я просто пытаюсь зависеть от задачи Rails environment.
:environment
environment
Как это можно правильно настроить?
Вы также должны иметь возможность сказать:
task :environment => [ 'rake:environment' ] do ... end
Пространство имен 'rake:' является пространством имен верхнего уровня.Это все равно что делать :: CONSTANT_NAME в ruby.
У меня точно такая же проблема, когда задача в пространстве имен пытается вызвать задачу с тем же именем в родительском пространстве имен.Это действительно возможно.
namespace :jobs do task :environment => [ '^environment' ] do #Something cool end end
Каждая используемая вами каретка начинает разрешение имен на один уровень выше в иерархии пространства имен.Смотри: http://rake.rubyforge.org/files/doc/rakefile_rdoc.html