"장고 앱 이름 바꾸기"의 두 판 사이의 차이
둘러보기로 가기
검색하러 가기
(새 문서: == 개요 == 프로젝트 개발 중간에 앱 이름을 바꾸는 건... 굉장히 귀찮은 일이다. == 진행과정 == {| class="wikitable" |+ !과정 !설명 !방법 |- |디랙...) |
(차이 없음)
|
2022년 6월 16일 (목) 12:29 판
1 개요
프로젝트 개발 중간에 앱 이름을 바꾸는 건... 굉장히 귀찮은 일이다.
2 진행과정
과정 | 설명 | 방법 |
---|---|---|
디랙터리 이름 바꾸기 | 단순히 앱 디렉터리의 이름을 바꾼다. | 바꾸는 건 쉬우니 알아서. |
참조 수정 | 앱을 참조하는 .py 안에서 import에 사용되는 앱 이름을 바꿔준다.
특히 settings.py 안의 앱 명단 잘 정리하자. 여기까지만 잘 해줘도 작동은 잘 된다. |
이건 일일이 찾아서 바꾸는 수밖에... |
2.1 앱을 받아 정리하기
과정 | 설명 | 방법 |
---|---|---|
깃허브에서 앱 다운 | 이름짓기 앱을 다운받는다. | pip install django-rename-app |
앱 등록 | settings.py에 앱을 등록한다. | INSTALLED_APPS = [
...
'django_rename_app',
...
]
|
실행 | 다음의 명령어를 실행한다. | python manage.py rename_app 옛이름 새이름 |
삭제 | 다 썼으면 없애버리자. | pip uninstall django-rename-app
settings.py도 수정하고. |
2.2 직접 DB 수정하기
과정 | 설명 | 방법 |
---|---|---|
DB수정 | 작동이 잘 되어도, DB가 그대로 있으면 나중에 문제가 될 수 있다.
|
UPDATE django_content_type SET app_label='새이름' WHERE app_label='예전이름'
ALTER TABLE <oldAppName>_modelName RENAME TO <newAppName>_modelName UPDATE django_migrations SET app='<NewAppName>' WHERE app='<OldAppName>' UPDATE django_content_type SET name='<newModelName>' where name='<oldModelName>' AND app_label='<OldAppName>' |