2011-05-15 1 views
0

사용자가 엔티티를 추가 및 제거 할 수있는 응용 프로그램을 만들고 있습니다. 응용 프로그램은 모델, 이주를 생성하고 데이터베이스를 이주합니다. 다음과 같이 효과적으로 :의도적으로 중복 마이그레이션 만들기

`rails generate model #{model_name}` 
`rake db:migrate` 

사용자가 모델을 제거하면 파일을 정리하고 테이블을 삭제하는 새 마이그레이션을 생성합니다. 모든 작품 -

20110515130423_create_customers.rb 20110515130445_create_houses.rb 20110515130457_drop_customers.rb

없음 문제 :

는이 시점에서 내가 좋아하는 일을하다 마이그레이션의 목록을해야합니다. 전체 세트를 통해 이전하면 물건을 추가하고 제거하지만 괜찮습니다.

누군가가 이전에 추가 한 모델을 추가하려고하면 내 문제가 발생합니다.

여러 마이그레이션이 이름 CreateCustomers

어떻게해야합니까

있습니다 레이크는 말을 중단? 먼저 시도해 볼 방법은 이와 같은 루프를 감지하고 모든 마이그레이션을 제거하는 것입니다. 마이그레이션 데이터베이스가 이상한 상태로 남을 것입니까?

덕분에 당신의 도움 - 나는이 괴짜 상황 ;-)

답변

0

안녕 내가 그것을 테이블을 삭제하고 나중에 필요해야 할 위치를 alter_table_customers 같은 마이그레이션을 만들 수 있습니다 그것을 다시 나쁜 아이디어라고 생각을 조금 알고 DB의 변경

+0

답장을 보내 주셔서 감사 드리며 대부분의 앱에 동의합니다. 그러나 이것은 이상한 자체 수정 응용 프로그램입니다. 사용자가 어떤 모델을 선택했는지는 –

+0

입니다.이 경우에는 제 자신의 생성기를 작성하고 새로운 마이 그 레이션 대신 기존 마이 그 레이션을 덮어 씁니다 – Bohdan