1. 가상환경 생성 및 적용, 장고 설치
venv 폴더 만들기
python -m venv venv
가상환경 활성화
source venv/Scripts/activate
(deactivate)
설치된 파이썬 패키지 조회
pip list
Django 라이브러리 설치
pip install django==4.2
requirements.txt에 freeze (패키지 설치할 때마다 freeze 진행)
pip freeze > requirements.txt
requirements.txt 읽어오기
pip install -r requirements.txt
2. Django 프로젝트
프로젝트 생성
django-admin startproject <프로젝트 이름> <생성 디렉토리>
프로젝트 이름 ex) my_first_pjt
* [ . ]은 현재 폴더를 의미하며 현재 폴더를 프로젝트 폴더로 사용해서 생성
django-admin startproject <프로젝트 이름> .
해당 폴더 안쪽으로 이동
cd my_first_pjt
django 개발 서버 실행
python manage.py runserver
살펴보기
settings.py | 프로젝트의 설정을 관리하는 곳 |
urls.py | 어떤 요청을 처리할지 결정하는 곳 |
__init__.py | 하나의 폴더를 하나의 파이썬 패키지로 인식하도록 하는 파일 → 3버전 이상으로 가면 없어도 됨. 하지만 3버전 이하에서도 동작하도록 호환성을 위해 지키는 규칙 |
wsgi.py | 웹 서버 관련 설정 파일 |
manage.py | Django 프로젝트 유틸리티 (조종기) |
3. 웹 사이트 기본 기능
- 회원가입
- 유저기능 / 프로필페이지, 로그인/로그아웃
- 회원탈퇴
- 비밀번호 변경
- 데이터베이스
- 보안
- 좋아요 기능
- 팔로우 기능
프레임워크(Framwork)란?
- 소프트웨어 개발을 위한 구조적인 틀
개발자들이 프로그램을 만들 때 자주 사용하는 여러 도구들을 모아놓은 것
특정한 작업이나 목적을 수행하기 위한 코드 뭉치
파이썬에는 Django Flask, FastAPI 등의 여러 프레임워크가 있음
프레임워크 사용 목적
- 생산성이 높아짐
- 부가적인 부분은 프레임워크에 맡기고, 핵심 로직에만 집중할 수 있음
- 구조적으로 안정적인 형태의 개발 가능
- 빠르고 안정적이며, 높은 품질의 소트웨어 개발 가능
장고가 뭐야?
- Python 기반
: Django를 다루기 위해 다른 언어를 배울 필요 없이, Python을 사용해서 웹개발이 가능함
- 웹 프레임 워크
: 웹을 만들기 위한 프레임 워크로, 빠른 웹개발을 위한 모든 것이 준비되어 있음
DRY(Don’t Repeat Yourself) 원칙
: 코드 중복을 최소로하는 개발 원칙을 따릅니다.
모든 것이 갖춰진 프레임워크
: 보안, 관리자기능, Auth 등의 필요한 모든것이 준비되어있습니다.
풍부한 레퍼런스
: Google과 함께라면 두렵지 않겠죠? 여러분의 모든 에러는 이미 해결책이 있습니다.
검증된 프레임워크
:어떠한 도구(프레임워크)를 고를때는 그것을 어디에 사용했는지 봐야합니다.
'Django' 카테고리의 다른 글
장고 폼(Form) / 모델폼(ModelForm) (1) | 2024.09.12 |
---|---|
장고 심화 (0) | 2024.09.02 |
Django_template (0) | 2024.08.27 |
Django_MTV Pattern (0) | 2024.08.23 |
Django App (0) | 2024.08.23 |