데이터베이스에 반영될 테이블의 형식을 클래스로 정의한다.
우리가 생성한 어플리케이션 "blogapp" 안의 models.py 안에 테이블, 즉 model, 또 다시말해 클래스를 정의한다.
blog 안에 데이터베이스를 생성하기 위해 클래스를 정의한다.
클래스의 인자로 "models.Model" 을 넣어줘야 한다.
이렇게 인자로 넣어주면 해당 클래스를 models.Model 를 상속받고, 이미 구현되어 있는 장고의 모델 기능을 사용 가능하다.
모델(클래스)안의 각 요소(각각의 열) 이 어떤 데이터 타입으로 구성되어 있는지를 명시할 것
변경사항이 담긴 파일을 생성한다.
$ python manage.py makemigrations
변경사항이 담긴 파일을 생성후, 이제 실제 DB 에다 변경사항을 반영할 수 있다.
$ python manage.py migrate
이제부터 위 Blog 클래스와 같은 형식을 가진 데이터들을 생성 가능해진다.
admin.py 파일에서 아래와 같이 Blog 모델를 등록하면, 관리자 페이지에서 Blog 객체를 확인 가능하다.
createsuperuser 명령어로 관리자 계정을 생성후, runserver 로 '기본주소'/admin 서버에 접속하면
Blogs 라는 model 을 확인할 수 있다.
이때 add 버튼을 눌러서 title, body 에다 우리가 직접 인풋값을 넣어서 생성한 테이블 객체를 DB에 반영할 수도 있다.
save 버튼을 누르면 해당 클래스(model) 에 대한 객체가 생성되었음을 볼 수 있다.
(이때 객체 뒤에 자동으로 's' 가 붙음. 그래서 'Blogs' 임)
이렇게 장고를 이용해 DB 에 반영할 수 있는 객체를 만들고, admin 사이트에서 객체 안에 있는 그 테이블의 형식에 맞게끔 데이터들을 추가하고 삭제할 수 있다.