본문 바로가기

파이썬 프로그래밍/Django기초

[Django] 장고. 정보를 담는 모델 클래스, DB디자인및 공간만들기

Django의 모델은 정보를 담고 있는 개념이라고 생각하시면 됩니다.


모델을 사용하기 위해서는 app안에 있는 model.py를 건드리면 된다고 생각하시면 쉽습니다.



1. 모델 클래스를 생성하기


1
2
3
4
5
6
7
8
from django.db import models
 
# Create your models here.
class Candidate(models.Model):
    name = models.CharField(max_length=10)
    introduction = models.TextField()
    area = models.CharField(max_length=15)
    party_number = models.IntegerField(default=0)
cs

4번째줄: Candidate라는 모델안에 models.Model를 상속받는다는 뜻입니다.

모델클래스는 반드시 models.Model을 상속받아야 합니다.


5번째~8번째줄

name이라는 이름으로 선언하고 models.charField 문자형으로 선언 (최대길이 10으로)

이런식의 제한 및 설정을 해주는 코드입니다.

8번째의 default=0 이것은 초기값을 0으로 설정한다는 뜻입니다.



2. migrations 사용을 통한 DB디자인

mysite안에 있는 settings.py안으로 들어갑니다.

INSTALLED_APPS안에 'elections'를 입력합니다.


이제 elections를 입력하였으니 powershell을 통해 elections을 INSTALL_APPS 해봅시다.

powershell에서

입력하여 migrations를 만들어줍니다.



만들었을때 이렇게 나오게 될겁니다.


migrations 확인하기

폴더를 확인해보면 migrations라는 폴더가 생긴것을 확인할 수 있습니다.

migrations 폴더 안에 0001_initial.py를 열어보면 이렇게 사진처럼 자동으로 나와있습니다.

이것은 DB가 Candidate라는 모델을 받아드리는 상태가 아닌 테이블이 정리만 된 상태입니다.

(준비만 된 상태)


DB에 공간을 만들어주기

powershell에서

python manage.py migrate를 입력하여 DB의 공간을 만들어줬습니다.




본 게시글은 https://tryhelloworld.co.kr/ 에 나온 강의를 참고하여 정리하였습니다.