[ Django ] Django App 이름 변경 하는 방법 (+ 수동 설정) / MYSQL ver.

2022. 5. 25. 13:10·Archive/Develop
728x90
반응형

이미지 출처 : https://upload.wikimedia.org/wikipedia/commons/thumb/7/75/Django_logo.svg/2560px-Django_logo.svg.png

 

코드 리뷰를 받고 있는데, App 이름을 복수가 아닌 단수로 짓는것이 더 좋을 것 같다는

피드백이 왔다.

 

해당 피드백에 동의해서 앱 이름을 변경하려고 했는데,

생각보다 이것저것 손 봐야해서 매뉴얼을 만들어둘까 한다.

어차피 나중에 100% 다른 블로거 분들의 글들을 보면서 해야할 것 같으니 내가 쓴다!

 

 

 

 


 

 

우선 나는 VSCode 에디터를 이용했다.

파이참에서는 refactor 기능이 따로 있는걸로 아는데, vscode 도 app 이름을 변경하면 refactor 기능을 이용하겠냐는 창이 뜬다.

 

yes 해주면 모든 것이 다 변경되면 좋았겠지만,, 난 아무것도 변경되지 않아서 수동으로 하나하나 해줬다.

 

 

1. 파일 변경

- INSTALLED_APPS 에 써져있는 앱 이름

- Models Meta app_name

- Import 구문 앱 이름

- 앱이름/app.py 내에 Config name

- urls.py (include 되어 있다면)

 

2. 데이터베이스 변경

mysql 서버에서 아래 쿼리를 실행한다.

 

// 장고 컨텐츠 타입 앱 라벨 변경
update django_content_type set app_label='새로운 앱 이름' where app_label='옛날 앱 이름';

// 테이블 이름 변경
alter table 옛날앱_모델이름 rename 현재앱_모델이름;

// migration 설정값 변경
update django_migrations set app='새로운 앱 이름' where app='옛날 앱 이름';

 

혹시 위 과정이 끝난 이후에 새롭게 migration 이 되지 않는다면,

아마 models 내에 여러가지 모델이 외래키나 manytomany 등으로 엮어져있을 것이다.

migration 파일을 수정해주자.

 

내가 경험해본 경우는 두가지이다.

 

- dependencies 를 수정해야하는경우

- manytomany 필드에 to 란을 수정해야하는 경우

 

연결되는 대상이 '예전 이름_모델' 이런식으로 설정이 되어있다면 '새로운 앱이름_모델' 로 변경해주면 된다.

 

 

 

3. migration / migrate 작업

 

마지막으로 migrate 해주면 설정이 제대로 변경이 되었는지 확인가능하다.

 

 

 

 

728x90
반응형

'Archive > Develop' 카테고리의 다른 글

[ Code Editor ] VSCode 새 탭으로 파일 열기  (0) 2022.06.18
파이썬 의존성 관리 Poetry 란 무엇인가  (0) 2022.06.08
[ Docker ] Docker란 무엇이며, 컨테이너는 왜 등장하는가 #1  (0) 2022.05.17
[Diagram] 시퀀스 다이어그램(Sequence Diagram)  (0) 2022.05.16
[ Django ] SerializerMethodField  (0) 2022.04.18
'Archive/Develop' 카테고리의 다른 글
  • [ Code Editor ] VSCode 새 탭으로 파일 열기
  • 파이썬 의존성 관리 Poetry 란 무엇인가
  • [ Docker ] Docker란 무엇이며, 컨테이너는 왜 등장하는가 #1
  • [Diagram] 시퀀스 다이어그램(Sequence Diagram)
코뮤(commu)
코뮤(commu)
코딩으로 커뮤니케이션하는 코뮤입니다 😎
  • 코뮤(commu)
    코뮤(COMMU)
    코뮤(commu)
  • 전체
    오늘
    어제
    • 분류 전체보기
      • Archive
        • Hacking
        • Develop
        • ETC
      • Algorithm
      • DB&Infra
      • ETC
      • Node
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • IT지식보따리
    • IT가 맛있다
    • IT 천재
  • 공지사항

    • 배고픕니다
  • 인기 글

  • 태그

    파이썬 알고리즘
    Django
    코드업 파이썬 기초 100제
    오라클
    보안뉴스
    자바스크립트 API
    파이썬 기초 문제
    자바스크립트 객체
    코드업
    비박스
    장고
    docker
    C++
    자바스크립트
    Codeup
    파이썬 기초
    백준 문제풀이
    oracle db
    코드업 기초
    Git
    백준 파이썬
    백준 풀이
    Python
    파이썬
    Oracle
    카카오 100일 프로젝트
    백준
    파이썬 문제
    javascript
    파이썬 백준
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
코뮤(commu)
[ Django ] Django App 이름 변경 하는 방법 (+ 수동 설정) / MYSQL ver.
상단으로

티스토리툴바