[Python Django] 프로젝트 생성하기

2022. 3. 23. 12:09Python/Django Framework

반응형

프로젝트와 앱의 개념

프로젝트는 하나의 큰 웹사이트와 같은 개념이고 앱은 그 프로젝트를 구성하는 기능이라고 생각하면 됩니다.


쇼핑몰이라는 프로젝트 내에, 상품 앱, 유저 관리 앱, 게시판 앱 등을 만들어 웹 페이지를 구성한다고 생각하면 된다. 프로젝트는 각 앱들을 중앙에서 관리하는 매니저의 개념으로 생각하고, 그 아래 각각 기능에 맞는 앱을 만들고 프로젝트에서 그 앱들의 기능을 하나로 엮어 준다 생각하면 좋을 것이다.

프로젝트 생성하기

1. 가상환경을 activate 합니다. Conda를 사용하겠습니다.

$ conda activate env310

2. Django를 설치해줍니다.

$ conda install django

Collecting package metadata (current_repodata.json): done
Solving environment: done

## Package Plan ##

  environment location: /opt/miniconda3/envs/env310

  added / updated specs:
    - django


The following NEW packages will be INSTALLED:

  asgiref            pkgs/main/noarch::asgiref-3.4.1-pyhd3eb1b0_0
  django             pkgs/main/noarch::django-3.2.5-pyhd3eb1b0_0
  krb5               pkgs/main/osx-64::krb5-1.19.2-hcd88c3b_0
  libedit            pkgs/main/osx-64::libedit-3.1.20210910-hca72f7f_0
  libpq              pkgs/main/osx-64::libpq-12.9-h1c9f633_1
  psycopg2           pkgs/main/osx-64::psycopg2-2.8.6-py310h0a4fc7d_1
  pytz               pkgs/main/noarch::pytz-2021.3-pyhd3eb1b0_0
  sqlparse           pkgs/main/noarch::sqlparse-0.4.1-py_0
  typing_extensions  pkgs/main/noarch::typing_extensions-3.10.0.2-pyh06a4308_0


Proceed ([y]/n)? y

Preparing transaction: done
Verifying transaction: done
Executing transaction: done

3. 프로젝트 생성

$ django-admin startproject project1
$ ll
total 0
drwxr-xr-x  4 minkyuseo  staff   128B  2 27 17:17 project1

4. 서버 실행하여 동작 확인

서버가 정상적으로 실행되면 아래와 같은 메시지가 나오게 되며, 기본 설정된 http://127.0.0.1:8000/에 접속하면 django 서버 접속 성공 화면이 나오게 된다.

CTRL+C를 입력하면 서버가 종료되고, CTRL+Z를 입력하면 터미널로 돌아오며 서버는 백그라운드에서 계속 동작하게된다.
$ python3 manage.py runserver
Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).

You have 18 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.
February 27, 2022 - 08:23:14
Django version 3.2.5, using settings 'project1.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

[27/Feb/2022 08:23:29] "GET / HTTP/1.1" 200 10697

4-1 포트를 달리하여 동작 확인하기

$ python3 manage.py runserver {원하는포트번호}

4-2 컴퓨터에 설정된 아이피로 접속할 수 있게 설정하기

$ python manage.py runserver 0.0.0.0:8000
반응형