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를 해도 인식을 못하는 문제가 발생하였다.
이러면 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
반응형