Django의 startapp

@SharkniA · November 20, 2024 · 3 min read

image1

서론: startapp이란?

startapp은 Django에서 새로운 앱(application)을 생성하기 위한 명령어입니다. Django는 프로젝트를 기능별로 나누어 독립적인 모듈(앱)로 구성하는 것을 권장합니다. startapp 명령어를 사용하면 앱을 생성하고, 필요한 기본 디렉토리와 파일 구조를 자동으로 생성해줍니다.

Django의 이란?

Django 앱은 특정 기능이나 도메인을 처리하는 독립적인 모듈입니다. 예를 들어, 블로그 기능이 필요한 경우 blog라는 앱을 생성하고, 사용자 관리 기능은 users라는 앱으로 나눌 수 있습니다.

하나의 프로젝트에서 여러 앱을 생성하고 조합하여 큰 시스템을 구성합니다.

왜 앱을 나눌까?

  • 모듈화: 기능을 분리하여 유지보수가 쉬워집니다.
  • 재사용성: 다른 프로젝트에서도 독립적으로 앱을 가져다 쓸 수 있습니다.
  • 확장성: 프로젝트가 커지더라도 각 앱이 독립적으로 관리되므로 확장성이 높아집니다.

startapp 명령어의 역할

python manage.py startapp <앱_이름> 명령을 실행하면, 아래와 같은 기본 파일과 디렉토리를 포함하는 앱 구조가 생성됩니다.

앱_이름/
    ├── migrations/
    │   └── __init__.py  # 마이그레이션 파일 관리
    ├── __init__.py      # Python 패키지 파일
    ├── admin.py         # 관리자 페이지 설정
    ├── apps.py          # 앱 구성 정보
    ├── models.py        # 데이터베이스 모델 정의
    ├── tests.py         # 테스트 케이스 작성
    └── views.py         # 뷰 로직 작성

startapp 사용 방법

명령어 실행

프로젝트 디렉토리에서 다음 명령어를 실행합니다.

python manage.py startapp myapp

settings.py에 앱 등록

생성된 앱을 프로젝트에서 사용하려면 settings.py 파일의 INSTALLED_APPS에 추가해야 합니다:

INSTALLED_APPS = [
    # 기존 앱들
    'myapp',  # 새로 생성한 앱 추가
]

앱 내에서 기능 추가

생성된 파일들에 모델, 뷰, URL 등 앱의 로직을 작성합니다.

@SharkniA
만 4살 백엔드 개발자
© SharkniA, Built with Gatsby.