[Django] 가상환경 / 프로젝트 / 앱 생성하기

문지은·2023년 3월 22일
0

Django 기초

목록 보기
1/14
post-thumbnail

🚀 가상환경

개요

  • 여러 개발자가 다른 컴퓨터로 장고 프로젝트를 진행할 때, 각각의 컴퓨터에 설치된 장고 버전이 달라 발생할 수 있는 문제를 방지하기 위해 파이썬 가상환경을 생성하여 작업
  • 가상환경을 이용하면 하나의 PC에 서로 다른 버전의 파이썬과 라이브러리를 쉽게 설치할 수 있고 독립적인 작업환경에서 작업이 가능하다.

가상환경 사용하기

  • 가상환경 생성
$ python -m venv [가상환경이름]) $ python -m venv venv
  • 가상환경 활성화
    • macOS의 경우 Scripts 대신 bin을 적으면 된다. (가상환경 폴더에서 activate 파일이 어디에 있는지 확인 가능)
$ source [가상환경경로]/Scripts/activate

예) $ source ~/venv/venv/Scripts/activate
  • 가상환경 비활성화
$ deactivate
  • 가상환경 패키지 목록 저장
$ pip freeze > requirements.txt
  • 파일로부터 패키지 설치
$ pip install -r requirements.txt

Django 기본 설정

프로젝트 만들기

가상환경 생성/활성화하고 Django 설치하기

$ python -m venv [가상환경이름]
$ source [가상환경경로]/Scripts/activate
$ pip install django==[version])
$ python -m venv venv
$ source ~/venv/venv/Scripts/activate
$ pip install django==3.2.18

프로젝트 생성하기

$ django-admin startproject [projectname]) $ django-admin startproject mypjt

생성된 프로젝트 구조

  • __init__.py
    • Python 에게 이 디렉토리를 하나의 Python 패키지로 다루도록 제시
    • 별도로 추가 코드를 작성하지 않음
  • asgi.py
    • Asynchronous Server Gateway Interface
    • Django 애플리케이션이 비동기식 웹 서버와 연결 및 소통하는 것을 도움
    • 추후 배포 시에 사용
  • settings.py
    • Django 프로젝트 설정 관리
  • urls.py
    • 사이트의 url과 적절한 views의 연결을 지정
  • wsgi.py
    • Web Server Gateway Interface
    • Django 애플리케이션이 웹 서버와 연결 및 소통하는 것을 도움
    • 추후 배포시에 사용
  • manage.py
    • Django 프로젝트와 다양한 방법으로 상호작용하는 커맨드 라인 유틸리티
    • $ python manange.py <command> [options]

앱 생성하기

  • 프로젝트 생성 후에는 프로젝트 안에 들어가서 작업을 진행한다.
$ cd [projectname]) cd mypjt
  • 애플리케이션(앱) 생성
$ python manage.py startapp articles
  • 앱을 사용하기 위해서는 반드시 project settings.py 파일의 INSTALLED_APP 리스트에 추가해야 한다.
# project/settings.py

INSTALLED_APPS = [
		'[appname]',
		...
]

생성된 애플리케이션 구조

  • admin.py
    • 관리자용 페이지를 설정하는 곳
  • apps.py
    • 앱의 정보가 작성된 곳
    • 별도로 추가 코드를 작성하지 않음
  • models.py
    • 애플리케이션에서 사용하는 Models을 정의하는 곳
    • MTV 패턴의 M에 해당
  • test.py
    • 프로젝트의 테스트 코드를 작성하는 곳
  • views.py
    • view 함수들이 정의되는 곳
    • MTV 패턴의 V에 해당

서버 실행하기

  • 서버 실행하기
$ python manage.py runserver
  • 서버를 종료할 때는 ctrl + c 를 누르면 된다.
profile
코드로 꿈을 펼치는 개발자의 이야기, 노력과 열정이 가득한 곳 🌈

0개의 댓글