본문 바로가기
Python/Django

Web - Django App

by hooni40 2021. 7. 2.
728x90
반응형

안녕하세요, 지난 시간에 Django Project 생성을 해보았습니다. 해당 게시물에서 잠깐 짚고 넘어갔듯 Project안에 여러 가지 App들이 포함되어 있는데요. 이번에는 App에 대해 정리해보겠습니다.

 

 1. Django App 생성

-. python manage.py startapp {App 이름}으로 django앱을 생성합니다. (Project 안에서 생성하셔야합니다!)

아래와 같이 foods라는 app이 생성된 것을 확인할 수 있습니다. VSCode에서 확인 시 foods 아래에 여러 파일이 자동으로 생성된 것을 알 수 있습니다.

VSCode

+) Django App 구조

-. migrations디렉토리는 데이터베이스의 변경 사항 히스토리를 누적하는 곳입니다.

-. __init__.py는 파일이 있는 디렉토리를 Python패키지로 인식하도록 해줍니다.

-. admin.pyApp을 django 관리자와 연동하기 위해 필요한 설정 파일입니다.

-. apps.py앱에 대한 설정을 넣어두는 파일입니다.

-. models.py는 앱에서 사용할 데이터 모델을 설정합니다.(데이터베이스 구조를 담당한다!)

-. test.py는 앱의 프로젝트의 테스트 코드를 작성하는 곳입니다.

-. views.py는 앱의 메인 로직 처리와 관련된 파일입니다.

 

2. Project의 INSTALLED_APPS에 추가

App을 만든 후에는 무조건! Project의 settings.py(Project와 App의 연결을 담당)에 들어가서 INSTALLED_APPS에 추가해 줘야 합니다! 여기서 INSATALLED_APPS는 현재 프로젝트를 구성하고 있는 App들을 모아놓은 것입니다. (추가 시 끝에 ','를 붙입니다!)

foods App 추가

 

Django App은 하나의 프로젝트에서만 사용할 수 있는 것이 아닌 여러 프로젝트에서 사용이 가능합니다. 이러한 App을 Reusable App이라고 합니다.

 

Reusable App : 여러 프로젝트에서 사용할 수 있게 만들어진 App

1. 한 가지 앱은 한 가지 기능을 하고, 그 기능을 잘 수행해야 한다.

2. Django 개발자는 프로젝트를 많은 앱으로 구성하는 것을 두려워하면 안 된다.

3. 각각의 앱을 유연하게 작성해야 한다.

4. 다른 사람에게 배포가 가능하도록 만들어야 한다.

728x90
반응형

'Python > Django' 카테고리의 다른 글

Web - URL(1)  (0) 2021.07.05
Web - MVC/MVT Architecture  (0) 2021.07.04
Web - Django project 시작 및 Server  (0) 2021.07.01
Web - Django 설치하기(2)  (0) 2021.06.30
Web - Django 설치하기  (0) 2021.06.30

댓글