답변:
위의 rake db : migrate는 개발 환경에서 보류중인 마이그레이션을 실행하고 db / schema.rb를 업데이트합니다. rake db : test : load는 현재 db / schema.rb에서 테스트 데이터베이스를 다시 만듭니다. 이후 시도에서 db : test : prepare는 먼저 보류중인 마이그레이션을 확인하고 적절하게 경고하므로 먼저 db : test : prepare를 실행하는 것이 좋습니다.
-http : //guides.rubyonrails.org/testing.html
기본적으로 데이터베이스 복제를 처리하므로 테스트 데이터베이스를 업데이트하기 위해 테스트에 대해 마이그레이션을 실행할 필요가 없습니다.
레이크 dB : 테스트 : 준비 같은 PG 문제에 대한 좋은 솔루션 이 .
"PG :: UndefinedTable : ERROR : relation does not exist"with a correct Rails naming and convention "여기서 실행할 수 없습니다. rake db:migrate RAILS_ENV=production
예를 들어 여기서 논의 된 버그에 대한 테스트 데이터베이스를 만들 수없는 경우 : "PG undefinedtable error relation users does not exist"
이 모든 오류 "PG :: UndefinedTable : ERROR : xxxxx 관계가 없습니다."
rake db:test:prepare
이제 더 이상 사용되지 않습니다.