Browse Source

๐ŸŒ Add Korean translation for `docs/ko/docs/tutorial/cookie-param-models.md` (#13000)

pull/13018/head
hy.lee 4 months ago
committed by GitHub
parent
commit
95267e58de
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 76
      docs/ko/docs/tutorial/cookie-param-models.md

76
docs/ko/docs/tutorial/cookie-param-models.md

@ -0,0 +1,76 @@
# ์ฟ ํ‚ค ๋งค๊ฐœ๋ณ€์ˆ˜ ๋ชจ๋ธ
๊ด€๋ จ์žˆ๋Š” **์ฟ ํ‚ค**๋“ค์˜ ๊ทธ๋ฃน์ด ์žˆ๋Š” ๊ฒฝ์šฐ, **Pydantic ๋ชจ๋ธ**์„ ์ƒ์„ฑํ•˜์—ฌ ์„ ์–ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๐Ÿช
์ด๋ฅผ ํ†ตํ•ด **์—ฌ๋Ÿฌ ์œ„์น˜**์—์„œ **๋ชจ๋ธ์„ ์žฌ์‚ฌ์šฉ** ํ•  ์ˆ˜ ์žˆ๊ณ  ๋ชจ๋“  ๋งค๊ฐœ๋ณ€์ˆ˜์— ๋Œ€ํ•œ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๋ฐ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ํ•œ ๋ฒˆ์— ์„ ์–ธํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๐Ÿ˜
/// note | ์ฐธ๊ณ 
์ด ๊ธฐ๋Šฅ์€ FastAPI ๋ฒ„์ „ `0.115.0` ์ดํ›„๋ถ€ํ„ฐ ์ง€์›๋ฉ๋‹ˆ๋‹ค. ๐Ÿค“
///
/// tip | ํŒ
๋™์ผํ•œ ๊ธฐ์ˆ ์ด `Query`, `Cookie`, ๊ทธ๋ฆฌ๊ณ  `Header`์— ์ ์šฉ๋ฉ๋‹ˆ๋‹ค. ๐Ÿ˜Ž
///
## Pydantic ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•œ ์ฟ ํ‚ค
**Pydantic ๋ชจ๋ธ**์— ํ•„์š”ํ•œ **์ฟ ํ‚ค** ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•œ ๋‹ค์Œ, ํ•ด๋‹น ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ `Cookie`๋กœ ์„ ์–ธํ•ฉ๋‹ˆ๋‹ค:
{* ../../docs_src/cookie_param_models/tutorial001_an_py310.py hl[9:12,16] *}
**FastAPI**๋Š” ์š”์ฒญ์—์„œ ๋ฐ›์€ **์ฟ ํ‚ค**์—์„œ **๊ฐ ํ•„๋“œ**์— ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ **์ถ”์ถœ**ํ•˜๊ณ  ์ •์˜ํ•œ Pydantic ๋ชจ๋ธ์„ ์ค๋‹ˆ๋‹ค.
## ๋ฌธ์„œ ํ™•์ธํ•˜๊ธฐ
๋ฌธ์„œ UI `/docs`์—์„œ ์ •์˜ํ•œ ์ฟ ํ‚ค๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:
<div class="screenshot">
<img src="/img/tutorial/cookie-param-models/image01.png">
</div>
/// info | ์ •๋ณด
๋ช…์‹ฌํ•˜์„ธ์š”, ๋‚ด๋ถ€์ ์œผ๋กœ **๋ธŒ๋ผ์šฐ์ €๋Š” ์ฟ ํ‚ค๋ฅผ ํŠน๋ณ„ํ•œ ๋ฐฉ์‹์œผ๋กœ ์ฒ˜๋ฆฌ**ํ•˜๊ธฐ ๋•Œ๋ฌธ์— **์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ**๊ฐ€ ์‰ฝ๊ฒŒ ์ฟ ํ‚ค๋ฅผ ๊ฑด๋“œ๋ฆด ์ˆ˜ **์—†์Šต๋‹ˆ๋‹ค**.
`/docs`์—์„œ **API ๋ฌธ์„œ UI**๋กœ ์ด๋™ํ•˜๋ฉด *๊ฒฝ๋กœ ์ž‘์—…*์— ๋Œ€ํ•œ ์ฟ ํ‚ค์˜ **๋ฌธ์„œ**๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ํ•˜์ง€๋งŒ ์•„๋ฌด๋ฆฌ **๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅ**ํ•˜๊ณ  "์‹คํ–‰(Execute)"์„ ํด๋ฆญํ•ด๋„, ๋ฌธ์„œ UI๋Š” **์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ**๋กœ ์ž‘๋™ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ฟ ํ‚ค๋Š” ์ „์†ก๋˜์ง€ ์•Š๊ณ , ์•„๋ฌด ๊ฐ’๋„ ์“ฐ์ง€ ์•Š์€ ๊ฒƒ์ฒ˜๋Ÿผ **์˜ค๋ฅ˜** ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
///
## ์ถ”๊ฐ€ ์ฟ ํ‚ค ๊ธˆ์ง€ํ•˜๊ธฐ
์ผ๋ถ€ ํŠน๋ณ„ํ•œ ์‚ฌ์šฉ ์‚ฌ๋ก€(ํ”ํ•˜์ง€๋Š” ์•Š๊ฒ ์ง€๋งŒ)์—์„œ๋Š” ์ˆ˜์‹ ํ•˜๋ ค๋Š” ์ฟ ํ‚ค๋ฅผ **์ œํ•œ**ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ด์ œ API๋Š” ์ž์‹ ์˜ <abbr title="๋†๋‹ด์ž…๋‹ˆ๋‹ค, ํ˜น์‹œ๋‚˜ ํ•ด์„œ์š”. ์ฟ ํ‚ค ๋™์˜์™€ ๊ด€๋ จํ•ด์„œ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ ์—†์ง€๋งŒ, ์ด์ œ API์กฐ์ฐจ๋„ ์ž˜๋ชป๋œ ์ฟ ํ‚ค๋ฅผ ๊ฑฐ๋ถ€ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์ด ์žฌ๋ฐŒ์Šต๋‹ˆ๋‹ค. ์ฟ ํ‚ค ๋“œ์„ธ์š”. ๐Ÿช">์ฟ ํ‚ค ๋™์˜</abbr>๋ฅผ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์„ ๊ฐ–๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๐Ÿคช๐Ÿช
Pydantic์˜ ๋ชจ๋ธ ๊ตฌ์„ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ถ”๊ฐ€(`extra`) ํ•„๋“œ๋ฅผ ๊ธˆ์ง€(`forbid`)ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:
{* ../../docs_src/cookie_param_models/tutorial002_an_py39.py hl[10] *}
ํด๋ผ์ด์–ธํŠธ๊ฐ€ **์ถ”๊ฐ€ ์ฟ ํ‚ค**๋ฅผ ๋ณด๋‚ด๋ ค๊ณ  ์‹œ๋„ํ•˜๋ฉด, **์˜ค๋ฅ˜** ์‘๋‹ต์„ ๋ฐ›๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
<abbr title="์ด๊ฑด ๋˜ ๋‹ค๋ฅธ ๋†๋‹ด์ž…๋‹ˆ๋‹ค. ์ œ ๋ง์— ๊ท€ ๊ธฐ์šธ์ด์ง€ ๋งˆ์„ธ์š”. ์ปคํ”ผ๋ž‘ ์ฟ ํ‚ค ์ข€ ๋“œ์„ธ์š”. โ˜•">API๊ฐ€ ๊ฑฐ๋ถ€</abbr>ํ•˜๋Š”๋ฐ๋„ ๋™์˜๋ฅผ ์–ป๊ธฐ ์œ„ํ•ด ์• ์“ฐ๋Š” ๋ถˆ์Œํ•œ ์ฟ ํ‚ค ๋ฐฐ๋„ˆ(ํŒ์—…)๋“ค. ๐Ÿช
์˜ˆ๋ฅผ ๋“ค์–ด, ํด๋ผ์ด์–ธํŠธ๊ฐ€ `good-list-please` ๊ฐ’์œผ๋กœ `santa_tracker` ์ฟ ํ‚ค๋ฅผ ๋ณด๋‚ด๋ ค๊ณ  ํ•˜๋ฉด ํด๋ผ์ด์–ธํŠธ๋Š” `santa_tracker` <abbr title="์‚ฐํƒ€๋Š” ์ฟ ํ‚ค๊ฐ€ ๋ถ€์กฑํ•œ ๊ฒƒ์„ ๋ชป๋งˆ๋•…ํ•ดํ•ฉ๋‹ˆ๋‹ค. ๐ŸŽ… ์•Œ๊ฒ ์Šต๋‹ˆ๋‹ค, ์ฟ ํ‚ค ๋†๋‹ด์€ ์ด์ œ ์—†์Šต๋‹ˆ๋‹ค.">์ฟ ํ‚ค๊ฐ€ ํ—ˆ์šฉ๋˜์ง€ ์•Š๋Š”๋‹ค</abbr>๋Š” **์˜ค๋ฅ˜** ์‘๋‹ต์„ ๋ฐ›๊ฒŒ ๋ฉ๋‹ˆ๋‹ค:
```json
{
"detail": [
{
"type": "extra_forbidden",
"loc": ["cookie", "santa_tracker"],
"msg": "Extra inputs are not permitted",
"input": "good-list-please",
}
]
}
```
## ์š”์•ฝ
**Pydantic ๋ชจ๋ธ**์„ ์‚ฌ์šฉํ•˜์—ฌ **FastAPI**์—์„œ <abbr title="๊ฐ€๊ธฐ ์ „์— ๋งˆ์ง€๋ง‰ ์ฟ ํ‚ค๋ฅผ ๋“œ์„ธ์š”. ๐Ÿช">**์ฟ ํ‚ค**</abbr>๋ฅผ ์„ ์–ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๐Ÿ˜
Loadingโ€ฆ
Cancel
Save