본문 바로가기
프로그래밍/Django(장고)

[python / Django / 장고]models.py에 추가 했는데도 makemigrations에 인식되지 않을때, makemigrations cant detect models - solved

by Mr.noobiest 2024. 3. 11.

python 웹 프레임워크 Django(장고)

Django 모델 추가


장고(django)는 ORM 구성으로 데이터 관리가 가능하다, ORM은 기존 쿼리문(SQL Query)문을 간단하게 만들어 보기에도 좋고 수정하기에도 좋게 만들어놓은 django에서 제공하는 기능이다.

스키마 생성/수정 시에는 migrate로 테이블을 업데이트하면 되고, 데이터 저장 및 수정은 obejct(DB의 Table에 들어갈 값들)를 생성한 뒤 그냥 save하면 된다.

#예시
q=Models_Object("Title":"이것은 제목", "Content":"이것은 내용","Custom_Column":"Models에서 지정한 컬럼")
q.save()
Title Content Custom_Column
이것은 제목 이것은 내용 Models에서 지정한 컬럼

 

 


 

 

Django Models Detect Error


그런데 분명히 models.py를 수정하여 새로운 테이블을 생성하거나 기존 테이블의 일부를 수정하고 난 뒤, makemigrations를 해도 인식을 못하는 문제가 발생하였다.

No changes detected

이러면 python manage.py migrate를 해도 새롭게 마이그레이션할 항목이 없어 DB에 적용이 안된다.

 

 


 

 

해결방법[Sovled]


해결 방법은 아주 간단하다, 마이그레이션 할 Model이 있는 App_Name과 --empty를 사용하면 된다.

>  python .\manage.py makemigrations --empty APP_Name

이때 App_Name부분은

python manage.py startapp App_Name에 썼던 이름을 그대로 사용하면 된다.

이후 다시 python manage.py migrate를 해주면 된다.

 

끝.

728x90
반응형