2009-03-04 6 views

답변

2

당신의 작업이 깨끗한 DB를 가지고에 단지 의존을 실행합니까을 확인하려면? (LIB/작업에 거주하는) 내 사용자 정의 레이크 작업이 내부를 시도

+0

좋아요. 나는 이것을 좋아한다. 그것은 작동합니다. 이것은 반드시 : 환경 태스크가 모든 레일 레이크 네임 스페이스를로드한다는 것을 의미합니다. – fooledbyprimes

2

EDIT : Rake :: Task []는 매개 변수를 허용하지 않으므로 ENV로 설정해야합니다. 또한 여러 번 실행하려면 작업을 다시 활성화해야합니다.

ENV['VERSION']= '0' 
Rake::Task['db:migrate'].invoke 
Rake::Task['db:migrate'].reenable 
ENV.delete 'VERSION' 
Rake::Task["db:migrate"].invoke 

참고 : Rake :: Task.reenable에는 Rake 0.8.2 이상이 필요합니다.

+0

하지만 실패 [: '리셋 DB를'환경] :

작업 : my_task =>이 그런 경우 당신은 할 수있다 . ("rake aborted task db : migrate VERSION = 0"을 빌드하는 방법을 모른다.) – fooledbyprimes

+0

Rake :: Task []는 params를 받아 들인다 : Rake :: Task [ 'my : task']. invoke ("123-abc") – Webdevotion

0

시도하고있는 것을 성취 할 수있는대로 rake db:reset을 확인하십시오.

은 레이크 모든 작업이 rake -T

+0

이것은 재미 있지만 실제로 새로 생성 된 커스텀 레이크 작업의 내부에 미리 빌드 된 레일 작업을 실행하는 방법을 설명하지는 않습니다. – fooledbyprimes

+0

네, Pesto가 내 앞에 그의 대답을 얻었으므로, 질문에 정확히 대답하지 않았더라도 당신에게 더 쉬운 방법을 보여주기 위해 상처를주지 않을 것이라고 생각했습니다. – erik

+0

실제로 Pesto의 대답은 작동하지 않았습니다. – fooledbyprimes

관련 문제