이번에 할 작업도 기존에 했던 작업과 많이 겹치는 작업입니다.
스피드하게 진행해 보도록 하겠습니다.
/user_order/models.py
from django.db import models
class Shop(models.Model):
shop_name = models.CharField(max_length=20)
shop_address = models.CharField(max_length=40)
class Order(models.Model):
shop = models.ForeignKey(Shop, on_delete=models.CASCADE)
order_date = models.DateTimeField('date ordered')
address = models.CharField(max_length=40)
deliver_finish = models.BooleanField(default=0)
/user_order/serializers.py
from rest_framework import serializers
from user_order.models import Shop, Order
class ShopSerializer(serializers.ModelSerializer):
class meta:
model = Shop
fields = '__all__'
class OrderSerializer(serializers.ModelSerializer):
class meta:
model = Order
fields = '__all__'
간단히 Shop, Order모델을 만들었습니다. 그리고 이들을 위한 Serializer를 간단히 만들어 주었습니다.
이제 마이그레이션을 도커 컨테이너 환경에서 진행해 주도록 하겠습니다.
$docker exec -it order-backend-1 bash
$python manage.py makemigrations
$python manage.py migrate
여기서 도커 컨테이너 환경으로 들어가야 하는 이유는, mysql의 내용이 들어있는 곳에서 해야하기 때문입니다.
이는 mysql container에 들어와 있는 모습입니다. 이 table의 정보를 저희는 .dbdata:/var/lib/mysql로 즉 django container에서도 접근 가능하다는 말입니다. 그래서 migrate를 django container에서 해주어야 합니다. 마이그레이션을 진행해 주었더니 저렇게 많은 테이블이 생겨 난 것입니다.
다음 시간에는 간단히 API를 짜보겠습니다.