lution88

[Django] 장고 기초. 본문

개발일지/# Django

[Django] 장고 기초.

lution88 2022. 1. 22. 17:39

01. Django 프로젝트 생성하기

django-admin startproject 프로젝트명

02. Django 프로젝트 구조

lution_proj	# 프로젝트 명 : 최상위 디렉토리 (Project Root)
    ㄴmanage.py	# Django 프로젝트를 생성하면 자동적으로 생성.
    ㄴlution_proj	# 프로젝트 명 : 프로젝트 앱 ProjectApp(Django Root)
    	ㄴ__init__.py
        ㄴsettings.py
        ㄴurls.py
        ㄴwsgi.py

- lution_proj : 최상위 디렉토리(Project Root)

우리 프로젝트의 전체 파일이 들어 있는 디렉토리이다.

- manage.py

: Django앱을 만들거나, 데이터베이스 관련 기능을 수행하거나, 개발 서버를 실행하는 등 여러기능을 실행.

- __init__.py

: __init__.py 파일이 포함된 디렉토리를 Python 패키지로 인식하게끔 하기 위해서 사용.

- settings.py

:  Django 프로젝트의 여러 가지 설정을 담고 있는 파일. 

- urls.py

: Django 프로젝트로 들어온 url을 보고 앎자은 로직(View)으로 연결해주는 역할을 하는 파일이다.

 

 

03. 프로젝트(Project) vs 앱(App)

쇼핑몰을 만든다고 가정했을때)

회원가입 기능, 장바구니 기능, 결제기능 등을 각각의 독립적인 앱 단위로 개발할 수 있다.

그리고 이 앱들을 모두 합친게 하나의 프로젝트 이다.

 

1) 앱(App) 생성

명령어 : python manage.py startapp 생성할앱이름  

ex) python manage.py startapp foods

- 필수 ! 앱을 생성하면 해줘야 하는 일 !

1) 장고에게 앱을 만들었다는 사실을 알려 주어야 한다.

    - 프로젝트 앱 디렉토리에 있는 settings.py 안의 INSTALLED_APPS 항목에 생성한 앱을 추가해 준다.

 

- 생성하고 나면 기본 틀이 제공된다. 웹 프레임워크를 사용하는 장점!!

  • admin.py  
    : foods앱을 Django 관리자와 연동하기 위해 필요한 설정 파일
  • apps.py
    : foods앱에 대한 설정들을 넣어 놓은 파일
  • models.py
    : foods앱에서 사용할 데이터 모델 정의, 데이터베이스 연동과 관련된 파일.
  • views.py
    : 서버에 어떤 요청이 들어왔을 때 어떻게 처리해야될지에 대한 함수가 들어가는 파일.

 

migrations 디렉토리 : 데이터베이스랑 연관되어 변경사항 히스토리가 누적된다.

 

04. 서버 실행해 보기.

명령어 : python manage.py runserver

옆에 보이는 화면이 나오면

정상적으로 연결된 것인다.

 

 

 

 

 

 

 

 

 

 


정리하기

1. 프로젝트 생성하기 (restaurant)

Django-admin startproject restaurant

 

2. 앱 생성하기 (foods, menus)

python manage.py foods

python manage.py menus

 

3. 앱 등록하기

settings.py - INSTALLED_APPS

{

'foods',

'menus',

}

 

4. 서버 실행하기

python manage.py runserver

'개발일지 > # Django' 카테고리의 다른 글

[Django] 우아한 URL  (0) 2022.01.24
[TIL] 220124 Django의 템플릿 언어  (0) 2022.01.24
[Django] MVT 구조  (0) 2022.01.23
[Django] URL 작성하기  (0) 2022.01.23
[TIL] 220122 django앱의 철학 Reusable App  (0) 2022.01.22
Comments