lution88

[Django] 모델 작성하기! 본문

개발일지/# Django

[Django] 모델 작성하기!

lution88 2022. 4. 20. 18:51

모델Model 작성하기

1. 사용할 데이터 확인
2. 데이터 모델링
3. 데이터에 맞는 Field 작성
4. 모델 생성 및 변경사항 Django에 반영하기.
1. 사용할 데이터 확인.
먼저 모델에 들어갈 데이터가 어떤 것이 있는지 확인합니다.
food_detail을 보면 name, description, price, img_path 4가지로 구성되어 있고,
name, description, img_path 는 문자열, price는 숫자로 되어 있습니다.

2. 데이터 모델링.
데이터를 확인했으면 다음은 모델을 작성해 줍니다.
모든 모델은 class로 구성되고, 모델 클래스는 django의 models.Model을 상속받아서 만들어지게 됩니다.
class Menu(models.Model):
    name = models.CharField(max_length=50)
    description = models.CharField(max_length=100)
    price = models.IntegerField()
    img_path = models.CharField(max_length=255)
    
    def __str__(self):
    	return self.name

3. 데이터에 맞는 Field 작성.
음식 이름을 저장할 구조를 만들어주고 각 데이터에 대한 필드를 지정해 줍니다.
CharField는 저장할 최대 길이를 필수인수로 넘겨줘야 합니다. (max_length)
가격은 숫자니까 IntegerField를 사용합니다.
Menu 클래스를 하나의 문자열로 표현해 주기 위해서 __str__ 함수를 지정해 줄 수 있습니다.


4. 모델 생성 및 변경사항 Django에 반영하기.
- 모델을 생성 시
python manage.py makemigrations​
makemigrations를 실행해서 모델을 생성 혹은 변경시킨 사항을 migration으로 저장합니다.

- 생성한 모델 혹은 수정한 모델을 Django에 알려주기.
python manage.py migrate​
migrate 하게되면 모델에서의 변경사항들과 데이터베이스의 스키마의 동기화가 이루어지게 됩니다.

 

'개발일지 > # Django' 카테고리의 다른 글

[allauth] allauth란?  (0) 2022.08.23
[Django] Model 이해하기!  (0) 2022.04.20
[Django] 폼을 간단하게, Model Form  (0) 2022.04.07
[Django] _set 의 사용 (역참조)  (0) 2022.03.27
[TIL] 카테고리 검색기능 만들기  (0) 2022.03.25
Comments