Django 프로젝트 시작하기

Gom La·2023년 3월 27일
0

장고와 친해지기

목록 보기
2/17
post-thumbnail

🔖 PEP8 Code Convention

➤ Code Convention

코드 컨벤션이란 여러사람이 협업을 진행해도 모두 읽기 편한 코드를 작성하기 위한 규칙이다.

PEP8

PEP8을 기준으로 많이 따르려고 하지만 관습이고 관례이기 때문에 꼭 얽매일 필요는 없다.

  • 한 줄의 문자열은 79자
  • DocString은 72자
  • snake_case 사용
  • 모듈 레벨 상수는 모두 대문자
  • ClassName은 Capitalized Word
  • 한 줄로 된, if, try...except, for, while구문은 사용하지 않는다.

but Django에서는

  • 한 줄의 문자열은 119자 추천
  • DocString은 72자

🔖 Zen of Python

  • Beautiful is better than ugly.
    : 못생긴 것 보다 아름다운 것이 좋다.
  • Explicit is better than implicit.
    : 묵시적인 것 보다 명시적인 것이 좋다.
  • Simple is better than complex.
    : 복잡한 것 보다 간단한 것이 좋다.
  • Complex is better than complicated.
    : 난해한 것 보다 복잡한 것이 좋다.
  • Flat is better than nested.
    : 단조로움이 중첩된 것 보다 좋다.
  • Sparse is better than dense.
    : 여유로움이 밀집된 것 보다 좋다.
  • Readability counts.
    : 가독성이 중요하다.
  • Special cases aren't special enough to break the rules.
    : 규칙을 깨야할 정도로 특별한 것은 없다.

🔖 프로젝트 시작하기

➤ virtualenv 가상 환경 설정

  • 프로젝트 시작 전 가상 환경이 필요한 이유 :
    프로젝트별로 사용하는 패키지 버전이 다를 경우 충돌이 발생하기 때문
  • virtualenv 설치 :
    🔎 pip3 install virtualenv
  • 가상 환경 생성 : 프로젝트 시작을 원하는 디렉토리로 이동 후
    🔎 virtualenv [가상환경 이름] --python=python3.10[원하는 버전으로]
  • 현재 디렉토리에 가상환경의 이름의 폴더 생성
  • 가상 환경 접속 : 현재 디렉토리에서
    🔎 source ./[가상환경 이름]/bin/activate
  • 비활성화 시키는 방법 :
    🔎 deactivate

➤ Django 설치

  • 가상환경이 활성화되 상태에서 django를 설치하여 프로젝트별 개발 환경을 분리된 환경에서 구축한다.

  • Django 설치 방법 :
    🔎 pip3 install django or pip3 install django==3.2.13

  • Django 버전 확인 :
    🔎 django-admin --version


➤ Project 및 App 생성

1) Project 생성

  • project는 하나의 프로그램 단위로 여러개의 Apps의 기능이 합쳐서 웹을 구축함
  • Django가 설치되면 "django-admin" 명령어로 Project 및 App을 생성

🔎 django-admin startproject [프로젝트명]
🔎 django-admin startproject [프로젝트명] .

위의 두 방법 차이는 현재 디렉토리 안에 프로젝트 디렉토리를 생성하고, 그 안에 다시 프로젝트 관련 폴더를 생성할지, 아니면 깊이를 주지 않고 바로 생성할지에 대한 depth의 차이이다.

django-admin startproject [프로젝트명]

django-admin startproject [프로젝트명] .

위와 같이 두개의 방법으로 프로젝트를 생성하면 프로젝트 구조에 차이점을 보이는데, 첫 번째 방법은 config라는 폴더안에 config라는 또다른 폴더가 생성되어 프로젝트를 구성하고 있고, 두 번째 방법은 현재 디렉토리에 config라는 폴더를 바로 생성하여 프로젝트를 구성하고 잇는 것을 확인 할 수 있다.

🧑🏻‍💻 나는 일반적으로 간결하고 깔끔한 프로젝트 구조를 원하기 때문에 두번째 방법을 선호 한다. 하지만 하나의 큰 프로젝트 내에 또다른 두개 이상의 프로젝트가 필요로 하는 경우에는 첫번째 방법을 사용해야 할 것이다.

2) App 생성
Project 디렉토리 안에 App을 생성하기 위해 프로젝트로 경로 이동
🔎 django-admin startapp [앱이름]

3) App 등록
Model은 apps.py에 종속되어 있기 때문에 DB의 실체가 될 테이블 등록이 필요하다.
settings.py의 "INSTALLED_APPS"부분에 아래와 같이 등록하자.

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',

    # CUSTOM APP
    'app_one', # 👈 생성한 App의 이름을 넣어주면 된다.
]

🧑🏻‍💻 이후에 DB 모델링 후에 관리자 페이지에서 데이터를 확인하려고 하는데 App을 등록을 하지 않으면 확인 할 수 없을 것이다.

4) 프로젝트 실행
이제 Django를 이용하여 생성한 프로젝트를 열어보자.
🔎 python3 manage.py runserver 8000

Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

실행 명령어를 입력하여 콘솔창에 나오는 http://127.0.0.1:8000/ 를 브라우저 주소창에 입력하여 이미지와 같이 나오면 성공이다.

profile
인생 개발자 라곰!!

0개의 댓글