๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐ŸŽจ Projects/Django

MTV ํŒจํ„ด

by HelloRabbit 2023. 3. 22.
728x90

Goal

1. MTV ํŒจํ„ด ์„ค๋ช…ํ•˜๊ธฐ
2. ์˜ˆ์‹œ๋ฅผ ํ†ตํ•ด MTV ํŒจํ„ด ์•Œ์•„๋ณด๊ธฐ

 

MTV ํŒจํ„ด์ด๋ž€?

Model (๋ชจ๋ธ) : ์•ฑ์˜ ๋ฐ์ดํ„ฐ์™€ ๊ด€๋ จ๋œ ๊ธฐ๋Šฅ์„ ๋‹ค๋ฃธ

Template (ํ…œํ”Œ๋ฆฟ) : ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ณด์—ฌ์ง€๋Š” ๋ถ€๋ถ„

View (๋ทฐ) : Model์˜ ๋ฐ์ดํ„ฐ๋ฅผ Template์—๊ฒŒ ์ „๋‹ฌํ•˜๊ณ , Template์˜ ํ•„์š”ํ•œ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ถ€๋ถ„

 

Django์—์„œ๋Š” MTV ํŒจํ„ด์œผ๋กœ ์ „๋ฐ˜์ ์ธ ๊ฐœ๋ฐœ์„ ์ง„ํ–‰ํ•œ๋‹ค (์ž๋ฐ” ์Šคํ”„๋ง์— MVC ํŒจํ„ด์ด ์žˆ๋“ฏ์ด).

 

์ด๋Ÿฌํ•œ ๊ฐœ๋ฐœ ํŒจํ„ด์„ ํ†ตํ•ด ํ”„๋กœ์ ํŠธ์˜ ๋ณต์žกํ•œ ์ฝ”๋“œ๋ฅผ ๊ทธ๋ฃน์ง€์–ด ๋‚˜๋ˆ„์–ด ๊ฐœ๋ฐœ์ž๋“ค์˜ ์—ญํ• ์„ ๋‚˜๋ˆ„๋Š”๋ฐ๋„ ์œ ์šฉํ•˜๊ฒŒ ์“ฐ์ด๊ณ  ์ถ”ํ›„์— ํ”„๋กœ๊ทธ๋žจ์˜ ์œ ์ง€๋ณด์ˆ˜์™€ ๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋ณด์•˜์„ ๋•Œ๋„ ์‰ฝ๊ฒŒ ์ฝ”๋“œ ํ๋ฆ„์„ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

MTV ํŒจํ„ด ์˜ˆ์‹œ

 

Template์€ ์šฐ๋ฆฌ๊ฐ€ ํ”ํžˆ ๋ณด๋Š” ์›น ํŽ˜์ด์ง€์ด๋‹ค. ์œ„ ์˜ˆ์ œ์—์„œ๋Š” ๋‚ด ์€ํ–‰ ๊ณ„์ขŒ์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์กฐํšŒํ•˜๊ฑฐ๋‚˜ ์ž…์ถœ๊ธˆ ํ•  ์ˆ˜ ์žˆ๋Š” ์˜จ๋ผ์ธ ๋ฑ…ํ‚น ์‚ฌ์ดํŠธ์™€ ๊ฐ™๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค.

 

View๋Š” Template์—์„œ ์˜จ ์š”์ฒญ์ด๋‚˜ Model์—์„œ ์‘๋‹ตํ•œ ๋‚ด์šฉ์„ ์„œ๋กœ์—๊ฒŒ ์ „๋‹ฌํ•ด์ค€๋‹ค.

 

Model์€ View์—๊ฒŒ์„œ ๋ฐ›์€ ์š”์ฒญ์„ ํ† ๋Œ€๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค(DB)์—์„œ ๊ด€๋ จ ๋‚ด์šฉ์„ ์ƒ์„ฑ, ์กฐํšŒ, ์ˆ˜์ •, ์‚ญ์ œ(CRUD) ๋“ฑ์„ ํ•ด์ค€๋‹ค.

(CRUD๋Š” Create, Read, Update, Delete์˜ ์•ž๊ธ€์ž๋ฅผ ๋”ฐ์˜จ ์šฉ์–ด๋กœ ๋ง ๊ทธ๋Œ€๋กœ ์ƒ์„ฑ, ์กฐํšŒ, ์ˆ˜์ •, ์‚ญ์ œ๋ฅผ ์–˜๊ธฐํ•œ๋‹ค. DB๋ฅผ ๋‹ค๋ฃฐ ๋•Œ ๊ธฐ๋ณธ ์ค‘์— ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋Šฅ๋“ค์ด๋‹ค.)

 

 

์ฐธ๊ณ 

๋ฐฑ์—”๋“œ๋ฅผ ์œ„ํ•œ Django Rest Framework

 

 

 

'๐ŸŽจ Projects > Django' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

์ƒํƒœ ์ฝ”๋“œ  (0) 2023.03.26

๋Œ“๊ธ€