📚 FDE · 세션 · Django 이해 · L03

Django 앱 (app)

작성일자 2026-08-11  ·  수정일자 2026-08-11  ·  강의차수 L03  ·  예상소요 15분

목표 Django 가 기능을 App(앱) 단위로 나눈다는 것과, 앱 폴더 안의 주요 파일(urls.py·views.py·models.py 등)이 각각 무슨 일을 하며 어떻게 이어져 화면 하나를 만드는지 이해한다.

1. App(앱)이란?

우리가 쓰는 Django 는 기능을 App(앱) 이라는 단위로 나눕니다. 로그인은 accounts 앱, 회의는 meetings 앱처럼, 기능 하나가 앱 폴더 하나입니다. 새 기능을 추가한다는 건 대개 새 앱을 하나 만든다는 뜻입니다.

앱 폴더를 열면 정해진 몇 개의 .py 파일이 들어 있습니다. 파일마다 역할이 정해져 있어서, 어느 앱을 열어도 구조가 비슷합니다.

2. 앱 안의 파일들

앱 하나에서 화면이 나오기까지, 아래 파일들이 역할을 나눠 맡습니다.

src/
├── accounts/        ← 앱 하나 (예: 로그인)
│   ├── urls.py
│   ├── views.py
│   ├── models.py
│   └── admin.py
├── meetings/        ← 또 다른 앱
└── ...
파일 역할
urls.py 들어온 주소를 어느 뷰로 보낼지 정함
views.py 요청을 처리해 화면(HTML)을 만드는 코드
models.py 앱이 다루는 데이터의 구조를 정의
templates/ 뷰가 값을 채우는 화면 틀(HTML)
admin.py 데이터를 손볼 수 있는 관리자 화면 등록

이 중 urls.py·views.py·templates·models.py 는 각각 이어지는 강의에서 하나씩 자세히 봅니다.

3. 파일들이 이어지는 법

주소를 입력하면 이 파일들이 순서대로 이어져 화면 하나를 만듭니다.

브라우저주소 입력① URL(주소)urls.py② View(뷰)views.py③ Template(템플릿)templates완성된 화면

  • ① URL(주소) (urls.py): 들어온 주소를 보고 어느 뷰로 보낼지 정합니다.
  • ② View(뷰) (views.py): 무엇을 보여 줄지 정해 화면(HTML)을 만듭니다. 데이터가 필요하면 Model(모델) 이 데이터베이스에서 꺼내 옵니다.
  • ③ Template(템플릿) (templates/): 뷰가 그 값을 채워 넣는 화면 틀입니다.

여기에 데이터를 맡는 Model(모델) 을 더한 M·V·T 가 Django 앱의 뼈대입니다.


마무리

  • 핵심 정리: Django 는 기능을 App(앱) 단위로 나눕니다(기능 하나 = 앱 하나). 앱 안에는 역할이 정해진 파일들(urls.py·views.py·models.py·templates/)이 있고, 주소가 들어오면 URL → View → Template 순으로 이어져 화면을 만듭니다. 데이터는 Model 이 맡습니다.
  • 주의 사항: 폴더가 있다고 다 앱은 아닙니다. 앱은 설정에 등록돼 있어야 Django 가 앱으로 인식합니다(등록은 앞 '환경 설정' 강의에서 다룬 settings 몫입니다).
  • 다음 시간: 첫 관문인 URL 라우팅(urls.py) 부터 하나씩 봅니다.
이 강의를 학습하셨나요?