<aside>

</aside>

λ„€, μ—¬λŸ¬λΆ„! μ‹€μ „ ν”„λ‘œμ νŠΈμ˜ μ„Έ 번째 μ‹œκ°„, 18강에 μ˜€μ‹  것을 ν™˜μ˜ν•©λ‹ˆλ‹€! πŸ”₯

μ§€λ‚œ 17κ°•μ—μ„œλŠ” APIRouterλ₯Ό μ‚¬μš©ν•˜μ—¬ ToDo 리슀트 ν”„λ‘œμ νŠΈμ˜ ꡬ쑰λ₯Ό κΉ”λ”ν•˜κ²Œ μ •λ¦¬ν–ˆμŠ΅λ‹ˆλ‹€. λͺ¨λΈ, λΌμš°ν„°, 메인 앱을 각각의 파일과 λ””λ ‰ν† λ¦¬λ‘œ λΆ„λ¦¬ν–ˆμ£ ? μ•„μ£Ό 잘 ν•˜μ…¨μŠ΅λ‹ˆλ‹€! πŸ‘

이제 λ“œλ””μ–΄! μš°λ¦¬κ°€ μ„€κ³„ν•˜κ³  κ΅¬μ‘°ν™”ν•œ κ·Έ ν‹€ μ•ˆμ— μ‹€μ œ κΈ°λŠ₯을 μ±„μ›Œ 넣을 μ‹œκ°„μž…λ‹ˆλ‹€. 16κ°•μ—μ„œ μ„€κ³„ν–ˆλ˜ Task(ν•  일)에 λŒ€ν•œ 생성(Create), 쑰회(Read), μˆ˜μ •(Update), μ‚­μ œ(Delete) - 즉, CRUD κΈ°λŠ₯의 λ‘œμ§μ„ μ‹€μ œλ‘œ κ΅¬ν˜„ν•΄ λ³Ό κ±°μ˜ˆμš”.

이번 μ‹œκ°„μ—λŠ” λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό μ‚¬μš©ν•˜κΈ° μ „ λ‹¨κ³„λ‘œ, μ„œλ²„μ˜ λ©”λͺ¨λ¦¬ μ•ˆμ— μžˆλŠ” 파이썬 λ”•μ…”λ„ˆλ¦¬λ₯Ό μž„μ‹œ 데이터 μ €μž₯μ†Œλ‘œ μ‚¬μš©ν•˜μ—¬ CRUD κΈ°λŠ₯을 κ΅¬ν˜„ν•©λ‹ˆλ‹€. μ„œλ²„λ₯Ό 껐닀 켜면 데이터가 μ‚¬λΌμ§€μ§€λ§Œ, API의 핡심 둜직과 FastAPI의 μ—¬λŸ¬ κΈ°λŠ₯을 μ‹€μ œλ‘œ λ™μž‘μ‹œμΌœλ³΄λŠ” μ€‘μš”ν•œ κ²½ν—˜μ΄ 될 κ²ƒμž…λ‹ˆλ‹€!

자, 이제 μ§„μ§œ 코딩을 μ‹œμž‘ν•΄λ³ΌκΉŒμš”? πŸ‘¨β€πŸ’»πŸ‘©β€πŸ’»


πŸ“š 챕터 μ†Œκ°œ

이번 18κ°•μ—μ„œλŠ” μ§€λ‚œ μ‹œκ°„μ— κ΅¬μ‘°ν™”ν•œ app/routers/tasks.py νŒŒμΌμ— μ‹€μ œ ν•  일(Task) 관리 λ‘œμ§μ„ κ΅¬ν˜„ν•©λ‹ˆλ‹€.

16κ°•μ—μ„œ μ„€κ³„ν•œ 5κ°€μ§€ API μ—”λ“œν¬μΈνŠΈμ— ν•΄λ‹Ήν•˜λŠ” ν•¨μˆ˜ 내뢀에 μ‹€μ œ 데이터 처리 μ½”λ“œλ₯Ό μž‘μ„±ν•©λ‹ˆλ‹€.

이번 λ²„μ „μ—μ„œλŠ” μ‹€μ œ λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό μ‚¬μš©ν•˜λŠ” λŒ€μ‹ , Python의 **λ”•μ…”λ„ˆλ¦¬(Dictionary)**λ₯Ό 인메λͺ¨λ¦¬(in-memory) 데이터 μ €μž₯μ†Œλ‘œ ν™œμš©ν•˜μ—¬ 데이터λ₯Ό μž„μ‹œλ‘œ μ €μž₯ν•˜κ³  κ΄€λ¦¬ν•©λ‹ˆλ‹€. μƒˆλ‘œμš΄ Task IDλ₯Ό μƒμ„±ν•˜κ³ , λ”•μ…”λ„ˆλ¦¬μ—μ„œ 데이터λ₯Ό μΆ”κ°€, 쑰회, μˆ˜μ •, μ‚­μ œν•˜λŠ” 방법을 λ°°μ›λ‹ˆλ‹€.

이 κ³Όμ •μ—μ„œ Pydantic λͺ¨λΈ(TaskCreate, Task)을 μ‚¬μš©ν•˜μ—¬ μš”μ²­ 데이터λ₯Ό λ°›κ³  응닡 데이터λ₯Ό κ΅¬μ„±ν•˜λ©°, μ‘΄μž¬ν•˜μ§€ μ•ŠλŠ” Task ID둜 μš”μ²­μ΄ λ“€μ–΄μ˜¬ 경우 HTTPException을 μ‚¬μš©ν•˜μ—¬ μ μ ˆν•œ 404 였λ₯˜λ₯Ό λ°˜ν™˜ν•˜λŠ” 방법 λ“± μ•žμ„œ 배운 κ°œλ…λ“€μ„ μ’…ν•©μ μœΌλ‘œ ν™œμš©ν•©λ‹ˆλ‹€.


🎯 챕터 λͺ©ν‘œ

이 κ°•μ˜λ₯Ό 마치면 μ—¬λŸ¬λΆ„μ€ λ‹€μŒμ„ ν•  수 있게 λ©λ‹ˆλ‹€:

  1. Python λ”•μ…”λ„ˆλ¦¬λ₯Ό μ‚¬μš©ν•˜μ—¬ κ°„λ‹¨ν•œ 인메λͺ¨λ¦¬ 데이터 μ €μž₯μ†Œλ₯Ό κ΅¬ν˜„ν•˜κ³  ν™œμš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.