2010-04-13 6 views
2

Django에서 syncdb를 실행하면 컨텐츠 유형의 기본 키가 다시 계산됩니다. 새 모델을 만들면 다음에 syncdb를 실행할 때 컨텐트 유형의 기본 키가 달라집니다.Django 배치에서 컨텐츠 유형 pk 무결성 유지

프로덕션 환경에서 응용 프로그램을 실행중인 경우 어떻게 새 모델로 데이터베이스를 업데이트하고 콘텐츠 유형 pks의 무결성을 유지할 수 있습니까?

답변

2

syncdb을 실행해도 기존 ContentType 값은 업데이트되지 않습니다.이 값은 데이터베이스에 저장되며 변경되지 않습니다. 따라서 그들에 의존하는 관계는 영향을받지 않을 것입니다.

그러나 새로 정의 된 모델은 syncdb를 실행할 때 새로운 ContentType 값을 얻게되며 현재는 이들이 무엇인지 미리 정의 할 방법이 없습니다. Ludwik이 지적했듯이이 문제는 1.2에서 해결되었습니다.

1

문제는 Django 1.2 (2 주 후에 나옵니다)에서 natural keys으로 해결되었습니다.

+0

django 트렁크를 실행중인 경우 이미 수정되었습니다. – reconbot

관련 문제