Django
from django.db import models
class Test(Models.Model):
pass
class Meta:
pass
- ๋ฉํ ๋ฐ์ดํฐ๋ Inner ํด๋์ค๋ก ์ฌ์ฉํ์ฌ ์์ ํด๋์ค์๊ฒ meta data๋ฅผ ์ ๊ณตํ๋ ๊ฒ์ด๋ค.
- ์์ ํด๋์ค์ ๋ฐ์ดํฐ๋ฅผ ๊ตฌ์กฐํํ๋ ๋ฐ์ดํฐ๊ฐ ๋ฉํ ๋ฐ์ดํฐ์ธ๋ฐ, ์ด ๋ฉํ ๋ฐ์ดํฐ๋ฅผ ๋ง๋ค์ด์ฃผ๊ธฐ ์ํด class Meta๋ฅผ ์ฌ์ฉํ๋ค.
class Menu(models.Model):
name = models.CharField(max_length=20)
class Meta:
db_table = 'menus'
class Category(models.Model):
name = models.CharField(max_length=20)
menu = models.ForeignKey('Menu', on_delete=models.CASCADE)
class Meta:
db_table = 'categories'
class Product(models.Model):
name = models.CharField(max_length=100)
category = models.ForeignKey('Category', on_delete=models.CASCADE)
class Meta:
db_table = 'products'
- class Meta๋ ํ
์ด๋ธ์ ๋ง๋ค ๋ ์ต์
์ ์ง์ ํด์ฃผ๋ ์ฉ๋์ด๋ค.
- class Menu์์ class Meta์๋ db_table = 'menus'๋ผ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ
์ด๋ธ ๋ช
์ ์ต์
์ด ๋ค์ด๊ฐ๋ค.
- class Menu(models.Model):
name = models.CharField(max_length=20)
- class Menu์์๋ ํ
์ด๋ธ์ column์ด ์์ฑ๋๋ค.
- name์ด ํ
์ด๋ธ์ column์ด ๋๋ค.
- menu = models.ForeignKey('Menu', on_delete=models.CASCADE)
- ์ธ๋ํค(ForeignKey): Menu๋ผ๋ ๋ฐ์ดํฐ๋ชจ๋ธ์ ์ฐธ์กฐํ๊ฒ ๋ค.
- CASCADE: ์์ class Question์ด ์ญ์ ๊ฐ ๋๋ฉด Choice๋ด์ question๋ ์ญ์ ๊ฐ ๋๋ค๋ผ๋ ๋ป
- ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ชจ์์ ๋ณด๋ฉด Categoryํ๋๊ฐ Menu ํ๋์ ์ฐ๊ฒฐ๋์ด ์๋ค. ์ด ๋ชจ์์ ์ฝ๋๋ก ํํํ ๊ฒ์ด ์ธ๋ํค์ด๋ค.
<์ฐธ๊ณ >