Рельсы, как выполнить команду rake

Как запустить этот файл rake в терминале/консоли?

my statistik.rake в lib/tasks

desc "Importer statistikker"
namespace :reklamer do
  task :iqmedier => :environment do
    ...
  end
  task :euroads => :environment do
    ...
  end
  task :mikkelsen => :environment do
    ...
  end
  task :orville => :environment do
    ...
  end
end
+53
12 апр. '11 в 21:16
источник поделиться
5 ответов

Вы не должны запускать задачи Rake в консоли Rails, но вместо этого в командной строке Terminal/Command, запустив

rake task_name

Если вы действительно должны запустить задачу Rake в Ruby, вы должны иметь возможность:

Rake::Task['task_name'].invoke

но обычно это делается только в задаче Rake для запуска другого.

Чтобы запустить несколько задач в одном пространстве имен с одной задачей, создайте следующую новую задачу в своем пространстве имен:

task :runall => [:iqmedier, :euroads, :mikkelsen, :orville ] do
  # This will run after all those tasks have run
end
+82
12 апр. '11 в 21:24
источник
Rake::Task['reklamer:orville'].invoke

или

Rake::Task['reklamer:orville'].invoke(args)
+20
12 апр. '11 в 21:25
источник

Вы пробовали rake reklamer:iqmedier?

Мои пользовательские задачи rake находятся в каталоге lib, а не в lib/tasks. Не уверен, что это важно.

+17
12 апр. '11 в 21:20
источник

вот очень хороший учебник по запуску задач rake, которые я нашел полезными.

http://jasonseifer.com/2010/04/06/rake-tutorial

+1
13 апр. '11 в 1:59
источник

В рельсах 4.2 вышеупомянутые методы не работали.

  • Перейдите в терминал.
  • Измените каталог в том месте, где присутствует ваш файл рейка.
  • запустите rake task_name.
  • В приведенном выше примере запустите rake iqmedier - запустите только задачу iqmedir.
  • запустить rake euroads - будет выполняться только задача euroads.
  • Чтобы выполнить все задачи в этом файле, выполните следующие действия внутри тот же файл и запустить rake all

    task :all => [:iqmedier, :euroads, :mikkelsen, :orville ] do #This will print all the tasks o/p on the screen 
    end
    
+1
28 сент. '15 в 17:15
источник

Посмотрите другие вопросы по меткам или Задайте вопрос