Saturday_July_4
.
.
.
์ค๋๋ ํ๋ฃจ์ข
์ผ ์ฅ๊ณ ์ ์จ๋ฆํ๋ค.
์ด์ ๋ ๋ฌผ์ํ๊ฐ 10๋ง๊ฐ์๋๋ฐ ๊ทธ๋๋ ์ค๋ ์ฒ๊ฐ๊น์ง ๋ด๋ ค๊ฐ๋ค.
ํ์ง๋ง ์ฌ์ ํ ์ด๋ ต๋ค ๐ฉ
๊ทธ๋ฐ๋ฐ ์ฅ๊ณ ๋ฅผ ๊ณต๋ถํ๋ ์ค, import์ ๊ด๋ จํด ๊ถ๊ธ์ฆ์ด ์๊ฒผ๋ค.
import json from django.views import View from django.http import JsonResponse class MainView(View): def get(self, request): return JsonResponse({"Hello":"World"}, status=200)
๋ค์์ view.py ๋ผ๋ ํ์ผ์ด ์๋ค.
์ฌ๊ธฐ์ ์ค์ํ๊ฑด viewํ์ผ์ด ๋ญ๊ณ , ์ ํด๋์ค๋ ๋ญ๊ณ ํ๊ธฐ ์ ์,
๋ด๊ฐ ๊ณต๋ถํ๋ import์ ๊ฐ๋
์ผ๋ก๋
"View์ JsonResponse๋ ํด๋์ค๋๊น
from์ผ๋ก ๊ฐ์ ธ์จ views์ http๋ ๋ชจ๋์ด๊ฒ ๊ตฌ๋,
๊ทธ๋ฌ๋ฉด .py ๋ก ๋๋๋ ํ์ผ์ด๊ฒ ์ง?"
๋ผ๋ ์๊ฐ์ ํ๋ฉฐ ์ฅ๊ณ ํ๋ ์์ํฌ๋ฅผ git clone์ผ๋ก ๋ฐ์์ ์ฐพ์๋ณด์๋ค.
๊ทธ๋ฆฌ๊ณ django์์ views๋ผ๋ ํ์ผ๊ณผ http๋ผ๋ ํ์ผ์ ์ฐพ๊ธฐ ์์ํ๋ค.
๊ทธ๋ฐ๋ฐ ์๋ฆ์ด ๋๊ฒ views๋ผ๋ ํ์ผ๊ณผ http๋ผ๋ ํ์ผ์ ๋๋ ํ ๋ฆฌ์๋ค.
์์ง ์ฝ๋ฆฐ์ด ๋ต์ ๋ ํผ์ ์ด์ํ ์๊ฐ์ ํ๋ฉฐ ์์์ ๋๋ผ๋ฅผ ํผ์น๊ธฐ ์์ํ๋ค.
"์ผ๋จ ๋๋ ํ ๋ฆฌ์ธ๊ฑด ํ์ธํ์ผ๋ View์ JsonResponse๋ ์ง์ง .py๋ก ๋๋๋ ํ์ผ์ด๊ฒ ์ง?
๊ฐ๋ฐ์๋ค์ด ์ด๋ฆ์ ๋๋ฌธ์๋ก ์ฃผ๋ฉด์ ๋ ์์ด๋ ค๊ณ ํ๋๊ฑฐ๊ฒ ์ง??"
๊ทธ๋ฆฌ๊ณ ๋ django์ ํ์ ๋๋ ํ ๋ฆฌ์ธ http์ views ๋๋ ํ ๋ฆฌ๋ฅผ ์ฐพ์๋ดค๋ค.
๊ทธ๋ค์ ์กด์ฌํ์ง ์์๋ค...
๊ทธ๋์ ๋๋ฌด ๋ต๋ตํ๋๋ฐ, ์์ ์๋ ๋๊ธฐ๊ฐ ์ฐฐ๋ก๊ฐ์ ์ค๋ช ์ ํด์ฃผ์๋ค.
__init__.py
์ด ์น๊ตฌ๋ฅผ ์ ๋ณด๋ผ๊ณ . ๊ทธ๋์ http ๋๋ ํ ๋ฆฌ์ init ์น๊ตฌ๋ฅผ ์ดํด๋ณด์๋ค.
๐ค JsonResponse๋ฅผ ์ฐพ๊ธด ์ฐพ์๋ค. ๊ทธ๋ฐ๋ฐ ์
__all__ ๐
์ด๋ผ๋ ์น๊ตฌ๋ ๋ญํ๋ ์น๊ตฌ์ธ์ง ๋ดค๋๋ ์ฝ๊ฒ ๋งํ์๋ฉด
์ django.http.response ์ JsonResponse๋ฅผ ์ํฌํธ ํ ์น๊ตฌ๋ฅผ
__all__
์ด๋ผ๋ ๊ณณ์ ๋ฃ์ด์ฃผ๋ฉด ์นํ?? ํ๋ฏ์ด ์ค์ฌ์ ์ธ ์ ์๋ค๊ณ ํ๋ค.(์ค๋ช
๋ชปํด์ ์ฃ์กํฉ๋๋ค ใ
)
๋ค์, ํ์ฌ ์์น๋ http ๋๋ ํ ๋ฆฌ์ ์๋ init ํ์ผ์ด๊ณ , ๊ทธ ํ์ผ์์ importํ ๋ชจ๋์ด๋ ํจํค์ง๋ฅผ all ์ด๋ผ๋ ๊ณณ์ ๋ฃ์ด์ฃผ๋ฉด http๋ผ๋ ๋๋ ํ ๋ฆฌ ์์์๋ ์นํ? ํ๋ฏ์ด ์ธ ์ ์๋ ๊ฒ์ด๋ค.
๊ทธ๋์ ๋ค์ ๋งจ ์ฒ์์ ์ฝ๋๋ฅผ ๋ณด๋ฉด
import json
from django.views import View
from django.http import JsonResponse
class MainView(View):
def get(self, request):
return JsonResponse({"Hello":"World"}, status=200)
JsonResponse ๋ผ๋ ํด๋์ค๋ http๋ผ๋ ๋๋ ํ ๋ฆฌ์ ์ด๋๊ฐ์ ์์ง๋ง, init ํ์ผ์์ ์นํ ๋น์ค๋ฌด๋ฆฌํ๊ฒ ํด์คฌ๊ธฐ ๋๋ฌธ์ ์๊น init ์์ ์ด๋ป๊ฒ ์นํํด์ฃผ์๋์ง๋ฅผ ๋ณด๋ฉด ๋๋ค.
์๊น ๋ณด๋๊น init ํ์ผ์์ JsonResponse๋ผ๋ ๋์ ์ด๋ป๊ฒ import ํ๋ ๋ดค๋๋
django.http.response ๋ฅผ ํ๊ณ JsonResponse ๋ฅผ import ํด์ฃผ์๋ค.
๊ทธ๋ฌ๋ฉด ๋ถ๋ช
JsonResponse๋ผ๋ ํด๋์ค๋ django.http.response ๋ชจ๋ ์์ ์์ ๊ฒ์ด๋ค.
๐คฉ ์ฐพ์๋ค
โญ๏ธ ๊ฒฐ๋ก
๊ฐ๋ฐ์๋ค์ด ํ๋ ํ๋ import๋ฅผ ํ ๋ ๋ง๋ค django.http.response๋ฅผ ์์ฑํ๊ธฐ ๊ท์ฐฎ์ผ๋
init์์ ์นํ? (๋ญ๋ผ๊ณ ํด์ผ๋์ง ใ
) ์ ํด์ฃผ๋ฉด์ http์ ์กด์ฌํ๋ ํ์ผ๋ค์ ํํด์๋
๊ทธ๋ฅ JsonResponse๋ผ๊ณ http๊น์ง๋ง ๊ฐ์ ธ์์ ์จ์ฃผ๋ ๊ฒ์ด๋ค.
์ด๋ ๊ฒ ํด์ ์ํ๋ ํ์ผ์ ์ฐพ์ ์ ์๋ค.