โญ Personal_Study/Django10 DynamicFieldsModelSerializer DynamicFieldsModelSerializer ๊ฐ์ Django์ DjangoRESTFramework(DRF)๋ ์์ฒด์ ์ผ๋ก serializer ํด๋์ค๋ฅผ ์ ๊ณตํ๋ค. ๊ทธ๋ฐ๋ฐ view ํจ์์์ ํด๋น model์ ํน์ field๋ง ์ถ๋ ฅํ๊ฑฐ๋, ํน์ nested relationship์์ ํน์ field๋ง ์์๋ฐ๊ณ ์ถ์ ๊ฒฝ์ฐ๊ฐ ์๋ค. ํ๋ ๊ฐ๋ผ๋ฉด ๋ฐ๋ก serializer๋ฅผ ๋ง๋ค์ด์ค ์ ์๊ฒ ์ง๋ง ์ฌ๋ฌ ๊ฐ๋ผ๋ฉด ์ฝ๋๊ฐ ๋ณต์กํด์ง๊ณ ๋ณ์๋ช ์ง๊ธฐ๋ ์ด๋ ค์์ง๋ค. ๋ฐ๋ผ์ 'field' ์ธ์๋ฅผ ๋ฐ๋ก ์ ์ํด ์ํ๋ field๋ง ์ถ๋ ฅํ๋๋ก ํ๋ DynamicFieldsModelSerializer ํด๋์ค๋ฅผ ๋ฐ๋ก ์ ์ํด ํด๊ฒฐํ ์ ์๋ค. ์ฝ๋ Serializer ํด๋์ค ์ ์ from rest_framework import seri.. 2022. 11. 6. Django REST framework - N:1 Relation Django REST framework - N:1 Relation GET CommentSerializer ์์ฑ GET-List urls, views ์์ฑ ์๋ต ํ์ธ GET-Detail urls, views ์์ฑ ์๋ต ํ์ธ POST urls, views ์์ฑ .save()์ ์ธ์๊ฐ โ save() ๋ฉ์๋๋ ํน์ Serializer ์ธ์คํด์ค๋ฅผ ์ ์ฅํ๋ ๊ณผ์ ์์ ์ถ๊ฐ์ ์ธ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์ ์ ์๋ค. โ CommentSerializer๋ฅผ ํตํด serialize๋๋ ๊ณผ์ ์์ ์ธ์๋ก ๋์ด์จ aricle_pk์ ํด๋นํ๋ article ๊ฐ์ฒด๋ฅผ ์ถ๊ฐ์ ์ธ ๋ฐ์ดํฐ๋ก ๋๊ฒจ์ ์ ์ฅ โ ์ด์ ์ ModelForm์ commit=False์ ์ ์ฌ ์๋ต ํ์ธ, ๊ทธ๋ฌ๋... โ ์๋ฌ ๋ฐ์ ์ฝ๊ธฐ ์ ์ฉ ํ๋ ์ค์ โ read_only_fiel.. 2022. 10. 27. Django REST framework - Single Model Django REST framework - Single Model โ ๋จ์ผ ๋ชจ๋ธ์ data๋ฅผ Serialization ํ์ฌ JSON ๋ฐ์ดํฐ๋ฅผ ์๋ตํ๋ Django ์๋ฒ ๊ตฌ์ถ ์ฌ์ ์ค๋น postman ์ค์น models migrate json ๋๋ฏธ๋ฐ์ดํฐ loadํ๊ธฐ djangorestframework ์ค์นํ๊ธฐ ModelSerializer Model Serializer โ ๋ชจ๋ธ ํ๋์ ํด๋นํ๋ ํ๋๊ฐ ์๋ Serializer ํด๋์ค๋ฅผ ์๋์ผ๋ก ๋ง๋ค ์ ์๋ shortcut์ ๊ณต Model ์ ๋ณด์ ๋ง์ถฐ ์๋์ผ๋ก ํ๋ ์์ฑ serializer์ ๋ํ ์ ํจ์ฑ ๊ฒ์ฌ๊ธฐ๋ฅผ ์๋์ผ๋ก ์์ฑ .create() ๋ฐ .update()์ ๊ฐ๋จํ ๊ธฐ๋ณธํ ํฌํจ Model Serializer ์์ฑํ๊ธฐ shell_plus ์คํ ๋ฐ Arti.. 2022. 10. 26. Django: Response JSON Response JSON ๊ฐ์ โ ์๋ฒ๋ ํ์ด์ง(html)๋ฟ๋ง ์๋๋ผ ๋ค์ํ ๋ฐ์ดํฐ ํ์ ์ ์๋ตํ ์ ์๋ค. โ JSON ๋ฐ์ดํฐ๋ฅผ ์๋ตํ๋ ์๋ฒ๋ก์ ๋ณํ โ ํ๋ฉด์ ๋ค๋ฅธ Front-end Framework๊ฐ ๊ตฌ์ฑ ์ฌ์ ์ค๋น migrate ์งํ (์ฌ์ง ์๋ต) ์ค๋น๋ ํ์ผ loadํด์ ์ด๊ธฐ ๋ฐ์ดํฐ ์ ๋ ฅ url ์ดํด๋ณด๊ธฐ Response HTML ์๋ต JsonResponse()์ ์ฌ์ฉํ JSON ์๋ต Django Serializer๋ฅผ ์ฌ์ฉํ JSON ์๋ต Djano REST framework๋ฅผ ์ฌ์ฉํ JSON ์๋ต 1. HTML ์๋ต โ ๊ธฐ์กด์ ํ๋ ๋ฐฉ์ 2. JsonResponse()๋ฅผ ์ฌ์ฉํ JSON ์๋ต โ JSON ํํ๋ก ๋ฐํํ๋ค. 3. Django Serializer๋ฅผ ์ฌ์ฉํ JSON ์๋ต โ ๋ชจ๋ธ ๊ตฌ.. 2022. 10. 25. (M:N) User- User Relationship M:N (Article-User) Profile ๊ตฌํํ๊ธฐ urls, views profile.html base.html, index.html์ ํ๋กํ ๋งํฌ ์ถ๊ฐ Follow ๊ตฌํํ๊ธฐ ๋ชจ๋ธ ๊ด๊ณ ์ค์ urls, views ํ๋กํ ํ์ด์ง์์ ํ๋ก์ฐ/์ธํ๋ก์ฐ ๋ฒํผ ๊ตฌํ ๋ฐ์ฝ๋ ์ดํฐ ๋ฐ is_authenticated ์ถ๊ฐ 2022. 10. 18. (M:N) Article - User Relationship M:N (Article-User) Like ๊ธฐ๋ฅ ๊ตฌํํ๊ธฐ(model ์ถ๊ฐ) ManyToManyField ์์ฑ ๊ทธ๋ฌ๋... โ Article๊ณผ User๊ฐ ์ด๋ฏธ (N:1) ๊ด๊ณ๋ฅผ ๋งบ๊ณ ์๊ธฐ ๋๋ฌธ์ ์ถฉ๋ํ๋ ํ์ ๋ฐ์! โ user๊ฐ ์์ฑํ ๊ธ๋ค(user.article_set)๊ณผ user๊ฐ ์ข์์๋ฅผ ๋๋ฅธ ๊ธ๋ค(user.article_set)์ ๊ตฌ๋ถํ ์ ์๋ค. related_name ์์ฑ โ ์ผ๋ฐ์ ์ผ๋ก N:1 ๊ด๊ณ๋ ์ ์์ ํ์ง ์๊ณ M:N ๊ด๊ณ์ related_name์ ์ค์ ํด์ค๋ค. User - Article ๊ฐ related manager ์ ๋ฆฌ article.user โ ๊ฒ์๊ธ์ ์์ฑํ ์ ์ - N:1 user.article_set โ ์ ์ ๊ฐ ์์ฑํ ๊ฒ์๊ธ(์ญ์ฐธ์กฐ) - N:1 article.like_use.. 2022. 10. 17. ์ด์ 1 2 ๋ค์