본문 바로가기

개발/python

Django

python을 공부하다보니 장고라는 이름을 안들을 수가 없는 것 같다. 그래서 장고공부도 해볼겸 블로그를 쓴다.

 

Django는 파이썬 기반 웹 프레임 워크인데 일반적인 웹 개발의 거의 모든 기능을 위한 솔루션을 제공한다. 그래서 코드를 더 빠르고 효율적으로 프로젝트를 구현 할 수 있다. 

 

여기서 웹 프레임워크는 웹 애플리케이션을 개발하기 위한 소프트웨어 프레임워크이다. 웹 애플리케이션은 전에 블로그에 올린 적이 있고 프레임워크는 애플리케이션의 특정 기능을 구현하는 데 사용할 수 있는 코드,라이브러리, 툴,규칙 등의 집합이다. 결론적으로 웹 애플리케이션을 구축하는데 필요한 기본 구조, 라이브러리, 도구, 패턴 등을 제공해서 효율적으로 만들수 있도록 도와주는 역할을 한다.

 

장고는 mvc 패턴 기반의 mvt 기반이라고 하는데, mvc는 modle-view-controller로 간단하게 model은 DB와의 상호작용 view는 사용자에게 데이터를 표시하는 역할(ex. html,css,javascript 등), controller는 모델과 뷰 사이의 상호 작용을 관리한다. 여기서 model은 거의 같고 mvc의 view가 mvt의 template가 하고 controller가 mvt의 view가 처리한다고 한다. 그리고 mvc는 명시적인 컨트롤러가 있고 템플릿이 뷰와 분리된 구조를 가지고, mvt는 컨트롤러가 없고 뷰와 템플릿이 밀접하게 연관 되어 있다.

그리고 객체 관계 매핑(ORM)이라고 해서 DB와 객체 지향 프로그래밍 언어 간의 호환되지 않는 데이터를 변환하는 프로그래밍 기법이 있다. 나는 이게 특이했는데 DB를 SQL문 없이 파이썬 언어를 통해 처리할 수 있다고 한다.

 

장고 설치는 python환경은 이전에 다룬적 있고 vscode도 있고 혹시 있는지 궁금하면 cmd에 

pip -V

 

를 쳐보자 경로와 버전이 나오면 설치가 되어 있는것이다.

후에 장고 설치도 간단하다. cmd에

pip install django

 

입력하고 엔터하면 장고 설치가 끝난다.

그리고 적당한 폴더에 장고 프로젝트를 만드려면

django-admin startproject [프로젝트이름 암거나]

 

이렇게 하면 아래와 같은 폴더가 생성된다

|--[프로젝트 이름]
|   |-- __init__.py
|   |-- settings.py
|   |-- urls.py
|   |-- wsgi.py
|-- manage.py

 

  • settings.py: 전반적인 설정을 가지고 있는 파일
  • urls.py: 프로젝트의 url을 관리하는 파일
  • wsgi.py: 웹서버(apache, nginx등)과 연동하기 위한 파일
  • manage.py: 프로젝트를 관리. 예를 들어, DB의 migration 생성 및 실행, 로컬에서 다른 설치없이 웹 서버를 기동 등

오늘은 일단 이정도로만 쓴다.

 

읽어주셔서 감사합니다.

'개발 > python' 카테고리의 다른 글

map함수  (0) 2024.05.07
colab  (0) 2024.05.03
flask riot api  (1) 2024.04.19
Flask  (0) 2024.04.17
스크래핑 2  (1) 2024.04.12