1. Django란?
Django(장고)는 파이선으로 작성된 무료 오픈 소스 웹 프레임워크로, 신속한 개발과 간편한 유지보수를 목표로하는 MTV(Model-Template-View) 아키텍쳐를 기반으로 하는 웹 애플리케이션 구축 언어입니다. Django의 특징으로는 다음과 같습니다.
- Django 특징
- 빠른 개발: Django는 재사용이 가능한 컴포넌트와 다양한 도구를 제공하여 개발 속도를 높임
- 배터리 포함: 기본적으로 많은 기능(ORM, 인증, 관리 패널 등)을 제공
- 보안: SQL 인젝션, 크로스 사이트 스크립팅(XSS), 크로스 사이트 요청 위조(CSRF) 등의 보안 취약점에 대한 보호 기능을 내장
- 확장성: 다양한 플러그인과 패키지를 통한 기능 확장이 쉬움
- 강력한 커뮤니티: 활발한 커뮤니티와 풍부화된 문서가 존재해 문제 해결의 용이
2. Django의 장단점
- 장점
- 신속한 개발: 코드 작성량이 적어 빠르게 애플리케이션을 개발
- 유지보수 용이: 코드 구조가 명확하고 일관성이 있어 유지보수가 쉬움
- 보안 기능: 기본적으로 많은 보안 기능을 제공하여 안전한 웹 애플리케이션 개발을 지원
- 관리 패널: 자동으로 생성되는 관리자 인터페이스를 통한 데이터 관리 용이
- 단점
- 유연성 부족: 특정 패턴에 강하게 의존하여 유연성이 떨어질 수 있음
- 학습 곡선: Django의 구조와 개념을 이해하는 데 시간이 걸릴 수 있음
- 성능: 다른 프레임워크에 비해 성능이 떨어질 수 있고, 대규모 애플리케이션 개발의 주의가 필요
3. Django 프로젝트 예시
- 블로그: 사용자 인증, 게시물 작성, 댓글 기능 등을 포함한 블로그 애플리케이션 개발
- E-commerce: 상품 목록,장바구니, 결제 시스템 등을 갖춘 전자상거래 웹 사이트
- 포트폴리오 사이트: 개인 프로젝트와 이력을 보여주는 웹 사이트
- RESTful API: Django REST Framework를 사용하여 API 서버 구축
4. Django 세팅법
Django는 Python을 기반으로 작성되므로, Python과 pip이 설치되어 있어야합니다.
- Ubuntu (Linux)
sudo apt update
sudo apt install python3 python3-pip
- macOS
Homebrew가 설치되어 있다면, 아래 명령어로 Python과 pip를 설치합니다.
brew install python
- Windows
Python 다운로드 페이지에서 Python 설치 프로그램을 다운로드하고 설치 시 "Add Python to PATH" 옵션을 선택합니다. 가상 환경을 만들고 활성화합니다.
pip install virtualenv
virtualenv myenv
source myenv/bin/activate # Linux/Mac
# myenv\Scripts\activate # Windows
가상 환경이 활성화된 상태에서 Django를 설치합니다.
pip install django
설치 후 아래 명령어로 새로운 Django 프로젝트를 생성합니다.
django-admin startproject myproject
cd myproject
아래 명령어로 개발 서버를 실행하여 프로젝트가 제대로 생서되었는지 확인합니다.
python manage.py runserver
웹 브라우저에서 http://127.0.0.1:8000/ 에 접속하여 Django 환영 페이지를 확인합니다.
5. 애플리케이션 생성
Django 프로젝트 내에서 애플리케이션을 생성합니다.
python manage.py startapp myapp
6. 데이터베이스 마이그래이션
Django의 기본 데이터베이스를 설정하고 마이그레이션을 실행합니다.
python manage.py migrate
7. 관리자 계정 생성
Django의 관리자 패널에 접근할 수 있도록 관리자 계정을 생성합니다.
python manage.py createsuperuser
관리자 계정을 생성하고 개발 서버를 다시 실행하고, http://127.0.0.1:8000/admin에 접속하여 관리자 패널에 로그인합니다.
8. 관리자 패널 실행
개발 서버를 다시 실행하고, http://127.0.0.1:8000/admin에 접속하여 관리자 패널에 로그인합니다.
GitHub - Koras02/djago-bloging: https://thinky.tistory.com/category/Back-End/Django
https://thinky.tistory.com/category/Back-End/Django - Koras02/djago-bloging
github.com
'Back-End > Django' 카테고리의 다른 글
[Django] 3장. Django 뷰 작성 - 비즈니스 로직 및 데이터 처리 (0) | 2025.04.04 |
---|---|
[Django] 2장. Django 모델 정의, 어드민 설정 (0) | 2025.03.25 |