ruby - 레일즈 - 작업 후크하기 전에 레이크




레일즈 rake (2)

Rake 태스크의 종속성을 사용하여이를 수행 할 수 있으며 Rake가 기존 태스크를 재정의 할 수있다.

Rakefile

task :your_task do
  puts 'your_task'
end
task :before do
  puts "before"
end
task :your_task => :before

결과로

$ rake your_task
before
your_task

레이크 작업을 수정하여 기존 작업을 실행하기 전에 약간의 코드를 실행하는 간단한 방법이 있습니까? 나는 향상시키기 위해 동등한 것을 찾고 있는데, 이것은 작업의 끝보다는 시작에서 실행됩니다.

Rake::Task['lame'].enhance(['i_run_afterwards_ha_ha'])

또는 레이크 후크 보석을 사용하여 전 후크를 할 수 있습니다.

https://github.com/guillermo/rake-hooks

namespace :greetings do 
    task :hola    do puts "Hola!" end ;
    task :bonjour do puts "Bonjour!" end ;
    task :gday    do puts "G'day!" end ;  
end 

before "greetings:hola", "greetings:bonjour", "greetings:gday" do
  puts "Hello!"
end

rake greetings:hola # => "Hello! Hola!" 




rake