2012-11-04 2 views
4

나는 단위 테스트를 실행하고 나의 mongo db를 맑게 할 때마다 설정을 수행하기를 좋아합니다. mongoid로 어떻게해야합니까?mongoid3를 가진 db를 지우십시오

Google 검색 중 일부 링크가 발견되었지만 아무 것도 작동하지 않는 것으로 나타났습니다.

답변

5

출력의 rake -T

rake db:drop   # Drops all the collections for the database for the current Rails.env 
.. 
rake db:mongoid:drop # Drops the database for the current Rails.env 
rake db:mongoid:purge # Drop all collections except the system collections 
.. 
rake db:purge   # Drop all collections except the system collections 
1

몽고이 그룹의 discussion (몽고이 3의 모든 자료 삭제) 관련성이있는 것 같습니다. purge!truncate!의 두 가지 방법이 있습니다. 제거 (Purge)는 인덱스를 의미하는 모음을 삭제합니다. 잘라내기를 사용하면 각 컬렉션의 문서 만 삭제되므로 인덱스를 유지하지만 삭제보다 느립니다.

2

당신은, 당신은 시스템 모음을 제외한 모든 컬렉션을 드롭 rake db:mongoid:purge를 실행할 수 있습니다 당신이 레일을 사용하는 경우 사양

+0

덕분에, 나는이 보석을 사용하고 있습니다. –

0

의 데이터베이스를 청소 추상화 database_cleaner 보석을 살펴 할 수 있습니다. 또는 rake db:mongoid:drop을 실행하여 현재 Rails.env에서 데이터베이스를 삭제하십시오.