오답노트
[Django] Model 작성하기 본문
Model 설정 확인하기
Model은 쿼리를 사용하지 않고 테이블을 핸들링할 수 있다. 그러기 위해선 현재 장고가 어떤 DB를 사용하고 있는지 파악해야한다.
프로젝트 폴더 아래에 settings.py에서 DATABASES 를 확인하자.
Django의 기본 데이터베이스는 sqlite이다. Django와 호환되는 다른 데이터베이스를 알고 싶다면 위 주석에 있는 링크를 찾아가보자
또한 INSTALLED_APPS 에도 앱이 추가되어 있는지 확인하자.
Model 생성
모델은 앱 폴더 아래 models.py에서 아래와 같이작성하자.
CharField 는 char형태로 250자 까지 사용 가능한 컬럼을 생성하고,
TextField는 varchar형태로 제한없이 사용 가능한 컬럼을 생성한다.
컬럼을 생성하는 함수는 doc을 참조해서 그때 그때 사용하도록 하자.
Test 클래스는 컬럼이 2개인 테이블인 셈이다.
이를 DB에 생성하기 위해서는 migration 파일을 생성하고 DB에 migrate 해야한다.
해당 프로젝트 폴더의 터미널에서 아래와 같이 입력하자.
python manage.py makemigrations <앱이름>
위 사진과 같다면 성공적으로 마이그레이션 파일을 생성했다.
이제 DB에 마이그레이트 해보자
python manage.py migrate <앱이름>
위 명령어를 입력하면 DB에 마이그레이트가 된다.
위 사진과 같다면 성공적으로 DB에 마이그레이트가 됐다.
sql browser나 다른 sql 툴이 있다면 확인해보자.
DB위치는 프로젝트 경로내에 db파일로 존재한다.
Admin 계정 만들기
생성한 테이블에 내용은 admin 페이지에서 쉽게 추가 수정 삭제가 가능하다.
그러기 위해선 admin 계정을 만들 필요가 있다.
다음 커맨드를 프로젝트 폴더에 입력하자
python manage.py createsuperuser
유저명과 비밀번호는 반드시 기억하도록 하자.
Admin 페이지에 등록하기
앱 폴더에 admin.py 에 다음과 같이 입력하자
admin 페이에 들어가면 하단에 앱이름과 모델 클래스명에 s가 붙은 항목이 추가된 것이 확인된다.
항목에 들어가서 무엇이든 좋으니 작성해보자.
'Python > Django' 카테고리의 다른 글
[Django] Template (0) | 2022.11.15 |
---|---|
[Django] View에서 Model 사용하기 (0) | 2022.11.15 |
[Django] View 작성하기 (0) | 2022.11.15 |
[Django] 설치 및 프로젝트 준비 (0) | 2022.11.14 |
[Django] Django (1) | 2022.11.13 |