cafe에 이미지를 넣어보겠습니다.
tutorialdjango > mysite > main > models.py로 이동하겠습니다. 여기서 null True를 주게 되면 기존에 있는 게시판 게시물은 null 값으로 들어가게 됩니다.
from django.db import models
class Cafe(models.Model):
name = models.CharField(max_length = 50)
content = models.TextField()
mainphoto = models.ImageField(blank=True, null=True)
def __str__(self):
return self.name
위와 같이 수정하셨다면 이제 사진을 처리할 수 있는 라이브러리를 설치 해야 합니다. Pillow
라는 라이브러리이며 아래와 같이 설치할 수 있습니다.
(myvenv)root@goorm:/workspace/컨테이너명/mysite# pip3 install pillow
모델의 변경사항을 DB에 반영합니다.
(myvenv)root@goorm:/workspace/컨테이너명/mysite# python manage.py makemigrations
(myvenv)root@goorm:/workspace/컨테이너명/mysite# python manage.py migrate
서버는 다시 구동시켜주세요.
(myvenv)root@goorm:/workspace/컨테이너명/mysite# python manage.py runserver 0:80
이제 사진이 저장될 공간을 설정해주도록 하겠습니다. 이 설정을 하지 않으면 사진을 업로드 할 경우 mysite 바로 아래로 파일이 들어가게 됩니다. 아래 코드의 위치는 settings.py
에 맨 마지막입니다.
from pathlib import Path
BASE_DIR = Path(__file__).resolve().parent.parent
#...중략...
MEDIA_ROOT = BASE_DIR / 'media'
MEDIA_URL = '/media/'