이 프로젝트가 자연어처리 등 파이썬을 사용하여 데이터를 다루는 일이 많기 때문에 웹 프레임워크도 파이썬기반의 장고를 선택했다.
장고에 대해 아는 것이 없었기 때문에 무작정 장고의 공식 문서 튜토리얼을 따라해보았고 기본적인 구조와 개념을 익혔다.
(1) Django 설치, 가상환경 셋팅
파이썬 프로젝트 실행을 위해 가상환경 내에 개발환경을 구성
virtualenv로 가상환경 셋팅 후 가상환경 안에서 Django설치
(2)Django app
* 프로젝트 생성
django-admin startproject mysite
mysite라는 프로젝트 디렉토리를 생성한다.
* 앱 생성
앱은 특정한 기능( 블로그나 공공 기록물을 위한 데이터베이스나 간단한 설문조사 앱)을 수행하는 웹 어플리케이션이다.
프로젝트는 다수의 앱을 포함할 수 있고, 앱은 다수의 프로젝트에 포함될 수 있다.
python manage.py startapp polls
polls라는 앱 디렉토리를 생성한다.
뷰를 호출하는 방법
1. 뷰를 호출하기 위해서는 이와 연결된 url이 필요하기 때문에 앱 디렉토리 내에 urls.py라는 파일을 생성한다.
2. 최상위 URLconf에서 poll.urls 모듈을 바라보게 설정한다.
=> 최상위 URLconf에서는 url을 파싱하고 path별로 다른 앱으로 분배시켜준다
* 장고의 흐름
장고의 웹서버는 경량 웹서버이므로 상용화 목적으로는 맞지 않다.
WSGI는 웹서버와 장고를 연결시켜주는 역할을 한다.
데이터베이스
* settings.py
INSTALLED_APPS = 기본적으로 제공하는 앱들이 적혀있다. 우리가 따로 앱을 생성할 경우 여기에 추가해줘야 한다.
DATABASE = 사용하는 데이터베이스가 적혀있다. 데이터베이스의 종류를 임의로 바꿀 수 있다.
py manage.py migrate
기본 앱들은 최소 하나 이상의 db테이블을 사용하기때문에 migrate명령을 통하여 필요한 db테이블을 생성한다.
모델 생성
모델은 데이터에 대한 단 하나의 확실한 정보 출처로 데이터베이스의 구조를 말한다.
모델 활성화
현재 프로젝트에 polls 앱이 설치되어 있다는 것을 알리기 위해 INSTALLED_APPS에 설정을 추가한다.
makemigration은 데이터베이스 내에 테이블을 생성할수 있도록 설계도를 만들 수 있게 한다.
출처)
https://docs.djangoproject.com/en/4.0/
Django documentation | Django documentation | Django
Django The web framework for perfectionists with deadlines. Overview Download Documentation News Community Code Issues About ♥ Donate
docs.djangoproject.com
'Tech > Django' 카테고리의 다른 글
[Django] Django와 MongoDB 연동 - Djongo 사용 (0) | 2022.03.26 |
---|