로컬과 실서버의 디비의 migrate가 꼬여서 개발한 컬럼이 반영이 안될때!!
컬럼은 처음부터 소스에 반영이 아닌 8번에서 반영되어야 합니다!! (git으로 잠시 stash로 넣어놨다가 8번에서 꺼내세요)
1. 해당 디비의 django_migrations 테이블 데이터 삭제 (truncate)
2. python3 manage.py makemigrations
3. python3 manage.py showmigrations
4. python3 manage.py migrate --fake components ( "django_content_type" 에 name 이 없다고 에러가 나면 하단을 참조하세요.)
마이그레이션 파일 삭제
5. find . -path "*/migrations/*.py" -not -name "__init__.py" -delet
6. find . -path "*/migrations/*.pyc" -delete
8. python manage.py makemigrations
9. python manage.py migrate --fake-initial
변경할 칼럼 반영
10. python manage.py makemigrations
11. python manage.py migrate --fake-initial
Good Luck !!
만일!! django_content_type의 name이 없다고 에러가 발생 한다면!!
django.db.utils.ProgrammingError: column "name" of relation "django_content_type" does not exist
아래의 sql을 해당 디비에서 실행시켜 칼럼을 추가 해 줍니다.
ALTER TABLE django_content_type ADD COLUMN name character varying(50) NOT NULL DEFAULT 'someName';
'web > Django' 카테고리의 다른 글
[django] 데이터베이스 여러개 사용하기 (django multi db) (2) | 2020.02.11 |
---|---|
django cross domain allow middleware (0) | 2019.08.16 |
EFK docker + django logger 커스텀 (0) | 2019.07.21 |
django models.OneToOneField는 변경할때 생성이 됩니다. (1) | 2019.07.03 |
nginx + uwsgi 연동 (0) | 2019.01.11 |