장고 프로젝트 "demo_project"가 있는데 syncdb 명령을 실행하고 테이블과 저장된 데이터를 만들었습니다. 그런 다음이 프로젝트의 복사본 인 "demo_project_copy"를 가져 와서 syncdb 명령을 실행했습니다. 이제 데이터베이스에 저장된 이전 데이터로 로그인 할 수 없습니다 (오류 : 잘못된 자격 증명). 그리고 "demo_project"에서 syncdb를 실행할 때 오류가 발생합니다. "demo_project_copy"의 syncdb가 "demo_project"의 데이터를 덮어 썼습니까? 어떻게 된 거예요?django의 syncdb에서 데이터 덮어 쓰기
0
A
답변
0
syncdb는 데이터베이스 데이터를 덮어 쓰지 않고 프로젝트에 설치 한 응용 프로그램에 필요한 데이터베이스 테이블을 추가하기 만합니다. 따라서 settings.py 파일의 INSTALLED_APPS에 새 응용 프로그램을 추가 한 다음 syncdb를 실행하면 명령이 필요한 테이블을 추가합니다.
django 1.7.x를 사용하는 경우 django 1.7.x syncdb가 사용되지 않으므로 migrate 명령을 사용하는 것이 좋습니다. syncdb 명령에 대한
참조, 문서 장고 매우 좋다 : https://docs.djangoproject.com/en/1.6/ref/django-admin/#syncdb
나는 오류를 가지고 실제로 일부 모델에서 이전에 사용되는 일부 마이그레이션이 있었다. 그래서 그들은 수동으로 '마이그레이션'을 사용하여 추가해야했습니다. 오후 7시 30 분에 오타가 생겨서 미안하다. – ancho