Django 앱 디렉토리 생성

Ethan·2023년 12월 26일
0

django

목록 보기
5/28

장고에서 프로젝트는 각각의 독립적인 앱으로 구성되어 있다. 즉, 앱은 각각의 기능을 담고 있는 디렉토리를 말한다.


앱 디렉토리 생성

앱을 생성하기 위해서는 프로젝트 루트 디렉토리로 이동해야 한다. 프로젝트 루트 디렉토리가 무엇인지 생각나지 않는다면 Django 프로젝트 구조 포스팅을 참고하면 된다. 프로젝트 루트 디렉토리로 이동했다면 아래와 같은 명령어를 입력해 앱을 생성한다.

cd {프로젝트 루트 디렉토리}  📌프로젝트 루트 디렉토리로 이동하는 명령어
python manage.py startapp {앱 이름}  📌앱 디렉토리를 생성하는 명령어
ls  📌앱 디렉토리가 잘 생성되었는지 확인하는 명령어

왜 명령어가 다른가요?

프로젝트를 생성하는 명령어는 django-admin startproject {프로젝트 이름} 이다. 그렇다면 앱을 생성하는 명령어는 django-admin startapp {앱 이름} 일 것 같지만 python manage.py startapp {앱 이름}이다. 혹시 몰라 django-admin startapp {앱 이름} 을 입력해봤지만 앱 디렉토리가 생성되는 것을 확인할 수 있다. 두 명령어의 차이는 무엇일까?

결과적으로, python manage.py startapp {앱 이름} 명령어는 현재 활성화된 Django 프로젝트의 설정을 참조하여 앱을 생성하며, django-admin startapp {앱 이름} 명령어는 프로젝트 설정에 관계없이 독립적으로 앱을 생성한다고 알려져 있다. 일반적으로, 이미 활성화된 프로젝트 내에서 앱을 생성할 때는 python manage.py startapp {앱 이름} 명령을 사용하는 것이 좋다고 한다.

결론은 python manage.py startapp {앱 이름} 을 입력하는 것이 좋을 것 같다.


생성한 앱 등록하기

앱을 생성하면 프로젝트 구성 디렉토리setting.py 파일에 등록해야 한다. 프로젝트 구성 디렉토리가 무엇인지 생각나지 않는다면 Django 프로젝트 구조 포스팅을 참고하면 된다.

📂ABC
📄manage.py
📄db.sqlite3
📂ABC
    📄__init__.py
    📄settings.py  📌
    📄urls.py
    📄wsgi.py
    

앱을 등록하는 방법은 setting.py 파일에서 INSTALLED_APPS 리스트에 생성한 앱 이름을 추가하면 된다.

INSTALLED_APPS = [
	'django.contrib.admin',
	'django.contrib.auth',
	'django.contrib.contenttypes',
	'django.contrib.sessions',
	'django.contrib.messages',
	'django.contrib.staticfiles',
	'{앱 이름}',
]

profile
글로 쓰면 머리 속에 정리가 되...나?

0개의 댓글

관련 채용 정보