본문 바로가기
프로그래밍_기타 언어

Django 설치와 기본적인 설정 방법

by 떠도리c 2024. 9. 22.
반응형

Django 설치와 기본적인 설정 방법에 대한 내용을 다룹니다.

 

환경 : macOS, python3.11.5

 

 

🔹 설치 및 설정

가상화 환경 설치

>> pip3 install virtualenv

 

가상화 실행

명령어 뒤에 생성될 디렉터리명(프로젝트 이름) 입력

>> virtualenv django_env 

 

 

프로젝트 활성화

[활성화]

>> source django_env/bin/activate
#윈도우 환경의 경우 source 명령어 없이 실행

 

 

가상환경에서 django 설치

>> pip3 install django

 

 

 

🔹 프로젝트 및 앱

django 프로젝트 만들기

django-admin 명령어로 프로젝트 만들기

>> django-admin startproject <프로젝트명>

프로젝트 디렉터리가 새로 생성됨



django 앱 만들기

django-admin 명령어로 앱 만들기

>> django-admin startapp board

board 라는 디렉터리가 생성됨

💡 앱이란, MTV 모델이 적용된 하나의 앱을 의미 위에서는 board(게시판)이라는 하나의 앱만 생성한것

 

 

앱 안에 templates 폴더 생성

startapp으로 앱 생성 시 MTV 중 MV(models, views)만 생성된다.

그래서 templates 디렉터리를 수동으로 만들어줘야 한다.

 

 

User 앱 추가

기본 앱 생성 명령어로 사용자 앱을 생성한다.

사용자 앱도 templates 디렉터리는 따로 생성한다.

>> django-admin startapp user

 

 

추가로 생성된 앱을 프로젝트에 추가하기

프로젝트 디렉터리 안에 settings 파일 INSTALLERD_APPS 부분에 생성한 앱 이름들을 적어줘야 한다.

 

 

 

🔹 서버 실행 및 접근

관리자 계정 만들기

>> python3 manage.py createsuperuser

 

 

웹서버 실행하기

>> python3 manage.py runserver

 

 

관리자 페이지 접근

http://127.0.0.1:8000/admin 주소로 접근 후 관리자 계정으로 로그인

 

 

데이터 베이스 생성 및 관리

manage 파일과 makemigrations, migrate 명령어를 통해 Model에서 생성한 내용이 DB에 자동으로 구조화되서 만들어짐

>> python3 manage.py makemigrations
>> python3 manage.py migrate
  • makemigrations 명령어 실행 후 user앱 migrations 디렉터리에 0001_initail 파일이 생성됨
  • 아래 그림과 같이 테이블을 구조화

makemigrations 명령어 이후 user앱 migrations 디렉터리에 0001_initail 파일

  • migrate 명령어 실행 후 DB 테이블이 생성됨

migrate 명령어 - 테이블 생성 화면

  • 프로젝트 디렉터리에 db.sqlite3 파일 생성
  • 생성된 DB 내용 확인

💡 makemigrations 와 migrate 명령어로 변경된 데이터를 적용할 수 있다. 간단한 명령어만으로 DB를 생성하고 수정하고 하는것이 프레임워크의 장점인 것 같다.

 

 

기타

 

{% csrf_token %} 의미

django에서 form 사용 시 form 태그안에 {% csrf_token %} 를 넣어 준다면 CSRF 공격에 대한 보안성을 향상 시킨다.

{% csrf_token %} 는 form 태그 안에 넣어준다.

 

반응형