DRF
[1] ModelSerializer ๊ฐ๋
django rest framework์ ModelSerializer ์ ๋ํด ๋จผ์ ์์๋ณด๊ฒ ์ต๋๋ค.
ModelSerializer์ ๋ชจ๋ธ์ JSON์ผ๋ก ์ฝ๊ฒ ๋ฐ๊ฟ ์ ์๋๋ก ํด์ฃผ๋ ๊ฒ์ ๋๋ค.
์๋ฅผ ๋ค์ด Account๋ผ๋ ๋ชจ๋ธ์ด ์๋ค๊ณ ํ ๋ AccountSerializer๋ฅผ ๋ง๋ค์ด์
๋ด๊ฐ ์ํ๋ ๋ชจ๋ธ์ ํ๋๋ค๋ง json์ผ๋ก ๋ง๋ค์ด์ค ์ ์์ด์
๋ชจ๋ธ์ ๋ชจ๋ ํ๋๋ฅผ ๋ค json์ผ๋ก ๋ง๋ค์ด์ค ๊ฑฐ๋ผ๋ฉด all ์ ํด์ค ์ ๋ ์๊ณ
ํน์ ํ๋๋ง ์ ์ธํ๊ณ ์ถ๋ค๋ฉด exclude ํด์ค ์ ๋ ์๋ต๋๋ค.
๊ทธ๋ฆฌ๊ณ nested json์ ๋ง๋ค๊ณ ์ถ์ผ๋ฉด depth ์ต์ ์ ์ฌ์ฉํ ์๋ ์์ต๋๋ค.
[3] ๋ชจ๋ธ Serializer ๋ง๋ค๊ธฐ
๊ทธ ๋ค์ question์ฑ์ serializers.py ๋ผ๋ ํ์ผ์ ๋ง๋ค์ด์ฃผ์ธ์
๊ทธ๋ฆฌ๊ณ Question๋ชจ๋ธ์ ๋ํ Serializer๋ฅผ ๋ง๋ค์ด์ค๋๋ค.
Question๋ชจ๋ธ์ ๋ชจ๋ ํ๋๋ฅผ json์ผ๋ก ๋ง๋ค๊ฒ ์ต๋๋ค. (์ด๋ ๊ฒ ํ๋ฉด ์์์ ๋งํ id๋ ๊ฐ์ด json์ ๋์ต๋๋ค)
[4] ํ์ด์ฌ ์์์ JSON ์ถ๋ ฅํด๋ณด๊ธฐ
์ผ๋จ ํ์ด์ฌ ์์ ์คํ์์ผ์ฃผ์ธ์
python manage.py shell
์์ ์๊น ๋ง๋ ์๋ฆฌ์ผ๋ผ์ด์ ๋ ๋ชจ๋ธ์ import ํด์ค๋๋ค.
from question.serializers import QuestionSerializer
from question.models import Question
์ด๋ ๊ฒ serializer๋ฅผ ๋ง๋ค๊ณ data๋ฅผ ์ถ๋ ฅํด๋ณด๋ฉด..!!
question = Question(title="์๋
ํ์ธ์ ์ง๋ฌธ์
๋๋ค")
serializer = QuestionSerializer(question)
serializer.data
json์ด ์ ์ถ๋ ฅ๋๋ ๊ฒ์ ๋ณผ ์ ์์ต๋๋ค.
(๋ชจ๋ธ์ด DB์ ์ ์ฅ์ด ์๋์ด์ id๊ฐ None์ผ๋ก ๋์ค๋ ๊ฒ ๊ฐ์์)
control+D ๋๋ quit()์ ์ ๋ ฅํด์ ํ์ด์ฌ ์์ ์ข ๋ฃํฉ๋๋ค.
[์ถ๊ฐ] - id๋ฅผ ์๋์ค๊ฒ ํด์ฃผ๋ ค๋ฉด
๋ง์ฝ id๊ฐ ๋์ค๋ ๊ฒ ์ซ๋ค๋ฉด ๋๊ฐ์ง ๋ฐฉ๋ฒ ์ค ํ๋๋ก ํด์ค ์ ์๊ฒ ์ต๋๋ค.
[์ถ๊ฐ] - ๋ฆฌ์คํธ ํํ์ json์ ๋ด๋ ค์ฃผ๊ณ ์ถ๋ค๋ฉด
์๋ณธ: https://eunjin3786.tistory.com/237?category=891871
๋๊ธ๋จ๊ธฐ๊ธฐ