삭제 된 모델은 여전히 Django의 ContentType 선택으로 표시됩니까?
-
13-12-2019 - |
문제
ContentType 선택 사항은 limit_choices_to
를 사용하여 일반적인 관계에 대한 ContentType 선택을 제한하고 있지만 더 이상 존재하지 않는 모델을 보여줍니다. 예를 들어이 코드 :
employer_content_type = models.ForeignKey(ContentType,
limit_choices_to={"model__in": ('venue', 'festival')}, related_name="employer")
.
중복 된 선택 목록, 즉 축제, 축제, 장소, 장소
그러나 앱으로 선택 사항을 제한하면 다음과 같은 모델을 제한합니다.
employer_content_type = models.ForeignKey(ContentType,
limit_choices_to={'app_label': 'contacts'}, related_name="employer")
.
복제가없는 모든 모델 목록을 얻는 것, 즉 주소, 이메일, 축제, 장소
개발 중 한 지점에서 나는 이전 앱의 복제본이었던 새로운 앱 ( "연락처")을 만들었습니다. 모든 모델에는 이름이 같은 이름이었습니다. 처음에는 이것이 중복을 일으키지 않았지만 Settings.py에서 이전 앱을 제거하고 이전 모델을 삭제 한 후에 문제가 없었습니다. 나는 그것이 캐시 문제라고 생각하지만, 나는 결코 캐싱을 설정하지 않았다!
어떻게 캐시를 지우거나 모델 및 앱으로 선택을 한정하는 방법은 어떻게 작동합니까?
도움을 주셔서 감사합니다!
참고 : 불행히도 나는 그림을 추가하기가 조금 어렵지 않게 그림을 추가 할 수 없었습니다!
해결책
ContentYPES_ContenType DB 테이블을 찾아 쓸모없는 모델을 삭제합니다.SyncDB는 또한 콘텐츠 형식 테이블에서 쓸모없는 모델을 삭제하라는 메시지를 표시해야합니다.
제휴하지 않습니다 StackOverflow