2011-08-15 5 views
6

마이그레이션이있는 레일 3.1 엔진을 생성하고 있습니다. rake db : 마이그레이션은 엔진 내부와 호스트 응용 프로그램 내에서 잘 작동합니다. 하지만이 엔진을 다른 레일 엔진에 포함시켜야합니다. 두 번째 엔진 테스트 더미 응용 프로그램을 포함하고, 그 더미 응용 프로그램의 application.rb이 줄에 추가 :Rails 3.1 엔진 마이그레이션이 작동하지 않습니다.

require 'my_engine' 

을 콘솔에서, 내가 처음 엔진 클래스를 볼 수 있습니다. 내가 실행하고있을 때이 작업

rake app:my_engine_engine:install:migrations 

나는이 오류 받고 있어요 마이그레이션에게 작업을하지만, :

rake aborted! 
Don't know how to build task 'railties:install:migrations' 

Tasks: TOP => app:my_engine_engine:install:migrations 
(See full trace by running task with --trace) 

수있는 사람의 도움을 my_engine_engine :

rake -T 

것은 나에게 응용 프로그램을 제공 설치 이 문제가있는 나와?

답변

8

글쎄, 내 문제에 대한 해결책을 찾고 있습니다. 난 그냥 내 테스트 응용 프로그램 디렉토리로 전환하고 거기에 실행하는 데 필요한 :

rake my_engine_engine:install:migrations 

을 그리고 그것을 정상적으로 작동합니다.

+5

답변에서 "테스트"디렉토리가 무엇인지에 대해 분명하지 않습니다. '/ test/dummy' 디렉토리이거나 다른 테스트 디렉토리이거나 엔진을 마운트하려는 주 앱의 디렉토리에 있습니다. "테스트"디렉토리 란 무슨 뜻입니까? – Green

+0

나는 원숭이가 이것을 자동으로 처리하도록 패치 할 것이다. (3 단계 참조) : http://pivotallabs.com/leave-your-migrations-in-your-rails-engines/ – courtsimas

+0

그러나 나는이 오류를 얻고있다. '할 일'을 만드는 법을 알지 못한다 : install : migrations'' –

1
다음 cd /test/testapp 필요 rails3를 들어

, rake community_engine:install:migrations

을 그리고 그 작품!

관련 문제