Study Anything ๐ง
[Django] ํ ํ๋ก์ ํธ ๋ด์์ ๋ค๋ฅธ ์ฑ์ ๋ชจ๋ธ ์ฌ์ฉํ๊ธฐ ๋ณธ๋ฌธ
[Django] ํ ํ๋ก์ ํธ ๋ด์์ ๋ค๋ฅธ ์ฑ์ ๋ชจ๋ธ ์ฌ์ฉํ๊ธฐ
์ 2022. 2. 9. 00:03ํ๋ก์ ํธ๋ฅผ ์ฌ๋ฌ ๋ช ์ด ํจ๊ป ์งํํ๋ค๋ณด๋ ๊ฐ ํ์์ด ์๋ก ๋ค๋ฅธ ์ฑ์ ๊ตฌํํ๊ฒ ๋๋๋ฐ,
์ด ๋ ๋ค๋ฅธ ์ฑ์ ๋ชจ๋ธ ํ๋๋ฅผ ์ธ๋ํค๋ก ์ฌ์ฉํ๊ฑฐ๋ ๋ชจ๋ธ ์์ฒด๋ฅผ ๋ด ์ฑ์์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ
์ด๋ป๊ฒ ์ฌ์ฉํ๋ฉด ๋๋์ง์ ๋ํ ๋ด์ฉ์ ๋ค๋ค๋ณด๋ ค๊ณ ํ๋ค.
ํธ์์ ๋ด ์ฑ์ ์ด๋ฆ์ 'myapp', ๋ค๋ฅธ ํ์์ ์ฑ ์ด๋ฆ์ 'yourapp'์ผ๋ก ์์ ํ๋๋ก ํ๊ฒ ๋ค.
๋ชจ๋ธ๋ค์ ๋ด์ฉ์ ๋ค์๊ณผ ๊ฐ๋ค.
# myapp/models.py
class Review(models.Model):
...
userId = models.ForeignKey(User, on_delete=models.CASCADE)
...
# yourapp/models.py
class User(models.Model):
...
Review ๋ชจ๋ธ์์๋ User ๋ชจ๋ธ์ ์ธ๋ํค๋ก ์ฌ์ฉํ์ง๋ง ๋ด๊ฐ ๋ง๋ ์ฑ์๋ ํด๋น ๋ชจ๋ธ์ด ์กด์ฌํ์ง ์๊ณ
ํ์์ด ๋ง๋ ๋ชจ๋ธ์ ๋ด์ฉ์ yourapp/models.py ํ์ผ์ ์กด์ฌํ๋ ์ํฉ์ด๋ค.
# myapp/views.py
def post(self, request):
data = request.data
r : Review = Review (
userId = User.objects.get(id=uid),
...
)
r.save()
์ด ๊ฒฝ์ฐ๋ ๋ฐ์ ๋ฐ์ดํฐ๋ฅผ ์ด์ฉํด์ ๋ด ๋ชจ๋ธ์ ๋ฃ์ผ๋ ค๊ณ ํ๋๋ฐ ์ธ๋ํค๋ก ์ฐ๊ฒฐ๋์ด ์์ด์
User ๋ชจ๋ธ์ ์ฌ์ฉํด์ผ ํ๋ ๊ฒฝ์ฐ์ด๋ค.
์ฑ ๋ณ๋ก ๊ธฐ๋ฅ์ ๊ด๋ฆฌํ๋ ๊ฒ์ด ์ฅ๊ณ ์ ์ฅ์ ์ด์ง๋ง ๊ฐ ์ฑ์ ๋ชจ๋ธ์ด ์์ฑ๋๋ฉด ๋ชจ๋ธ ๋ํ ์ฑ ๋ณ๋ก ๋๋ ์ง๋ค.
๋ฐ๋ผ์ ๋ค๋ฅธ ์ฑ์ ๋ชจ๋ธ์ ์ฌ์ฉํ๊ธฐ ์ํด์๋ ๋ค์์ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋ฉด ๋๋ค.
# myapp/models.py
from django.db import models
from user.models import User ### ์ด ๋ถ๋ถ ์ถ๊ฐ ###
class Review(models.Model):
...
# myapp/views.py
from user.models import User ### ์ด ๋ถ๋ถ ์ถ๊ฐ ###
class ReviewView(APIView):
...
def post(self, request):
data = request.data
r : Review = Review (
userId = User.objects.get(id=1),
...
)
r.save()
์ฅ๊ณ ๊ฐ ํ์ด์ฌ ์ธ์ด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๊ธฐ ๋๋ฌธ์
์ ๋ฐฉ๋ฒ์ฒ๋ผ ๋ค๋ฅธ ์ฑ์ ์์ฑ๋ ๋ชจ๋ธ์ import ํด์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ฒ๋ผ ์ฌ์ฉํ๋ฉด ๊ฐ๋จํ๊ฒ ํด๊ฒฐํ ์ ์๋ค.
'์คํฐ๋ > Web' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[GCP] ๊ตฌ๊ธ ํด๋ผ์ฐ๋ ํ๋ซํผ์ผ๋ก ์๋ฒ ๊ตฌ์ถํ๊ธฐ (1) - ์ธ์คํด์ค ์์ฑ (0) | 2022.03.02 |
---|---|
[Django] ๋ชจ๋ธ ์์ ํ๊ณ ์ญ์ ํ๊ธฐ (0) | 2022.02.08 |
[Django] DRF : Serializer ๊ธฐ๋ณธ ์ฌ์ฉ๋ฒ, ์ ํจ์ฑ ๊ฒ์ฆ (0) | 2022.01.30 |
[Django] DRF : REST API๋ฅผ ํตํด ์ฅ๊ณ ์ ๋ฆฌ์กํธ ์ฐ๊ฒฐํ๊ธฐ (0) | 2022.01.29 |
[Django] DRF : ์ฅ๊ณ ๋ชจ๋ธ์ json ๊ฐ์ฒด๋ก ์ถ์ถํ๊ธฐ (0) | 2022.01.19 |