2011-09-18 4 views
4

레일즈 애플리케이션에서 데이터베이스의 데이터베이스 구조를 내보내는 방법이 있습니까? rake를 사용하여 db에서 데이터를 내보내는 방법이 있다고 생각합니다.db에서 마이그레이션 파일로 데이터베이스 구조를 내보내려면 어떻게해야합니까?

rake db:migrate은 마이그레이션 파일에서 테이블을 만듭니다. 데이터베이스에서 마이그레이션 파일을 생성 할 수 있도록 반대 방향으로 수행하는 명령이 있습니까?

이전에 3.0.x 버전에서는 레일즈 애플리케이션을 구축했습니다.

데이터베이스의 열 구조를 추가 및 제거하거나 변경하는 일부 마이그레이션 파일이 있기 때문에 데이터베이스의 실제 테이블 수보다 많은 마이그레이션 파일이 있습니다.

당연히 각 마이그레이션 파일을 수동으로 변경하여 3.1 표준으로 마이그레이션 파일로 변경할 수 있지만 데이터베이스 구조를 내보낼 수있는 방법이 있는지 알고 싶습니다. http://www.tutorialspoint.com/ruby-on-rails/rails-and-rake.htm

답변

9

사용 명령 rake db:schema:dump (또는 스키마 파일을 기존에서 파생) : 덤프 schema_to_scaffold라는 보석을 사용하여 스캐 폴드 스크립트를 생성 할 수 있습니다. 다음과 같이 출력합니다 : rails g scaffold users fname : string lname : string bdate : date 전자 메일 : string encrypted_password : string schema.rb에서 이름이 바뀐 schema.rb. 확인 here

+0

그게 효과가 : P 고마워!, 그래서 내 작업 파일을 다른 마이 그 레이션 파일로 분할? – user482594

+1

아니요. 레이크로 스키마를 직접 "로드"할 수도 있습니다. 그런 다음 스키마를 덤프 한 이후의 모든 변경 사항을 마이그레이션 할 수 있습니다. – Pavling

+1

파빌 링의 권리. 로드하려면 rake db : schema : load를 사용하십시오. – jschorr

-1

레이크 DB 후 : 당신은이 링크에 관심이있을 수 있습니다 스키마 당신

편집을 위해 그것을 할 것입니다,

관련 문제