VS Code 단축키 모음
새로고침
- `F5`
저장
- Windows: `Ctrl` + `S`
- macOS: `command` + `S`
전체선택
- Windows: `Ctrl` + `A`
- macOS: `command` + `A`
잘라내기
- Windows: `Ctrl` + `X`
- macOS: `command` + `X`
콘솔창 줄바꿈
- `shift` + `enter`
코드정렬
- Windows: `Ctrl` + `Alt` + `L`
- macOS: `option` + `command` + `L`
들여쓰기
- `Tab`
- 들여쓰기 취소 : `Shift` + `Tab`
주석
- Windows: `Ctrl` + `/`
- macOS: `command` + `/`
프로젝트 시작과정 (아래 이미지는 VSCode기반)
- 가상환경을 생성
- 가상환경을 활성화
- Django를 설치
- 의존성 파일 requirements.txt를 생성
# venv라는 폴더명으로 가상환경 만듦
python -m venv venv
# 가상환경 활성화
source venv/Scripts/activate
# venv라는 폴더명으로 가상환경 만듦
python -m venv venv
# 가상환경 활성화
source venv/bin/activate
# 장고 설치
pip install django==4.2
Django 만 설치했는데, 다른 것도 설치되는 이유? → 의존성
Django도 결국 또 다른 것들의 도움을 받아 만들어짐. 장고를 사용하기 위해서는 저것들이 함께 설치되어야 함.
→ 이 버전들은 항상 동일해야함
→ 협업할 때, 버전 정보 전달 필요
# 버전정보 저장
pip freeze > requirements.txt
# 버전정보 불러오기
pip install -r requirements.txt
5. 프로젝트 생성
django-admin startproject my_first_pjt
6. 작업 디렉토리 변경
cd my_first_pjt
7. django 개발 서버 실행
python manage.py runserver
`settings.py` : 프로젝트의 설정을 관리하는 곳
`urls.py` : 어떤 요청을 처리할지 결정하는 곳
`__init__.py` : 하나의 폴더를 하나의 파이썬 패키지로 인식하도록 하는 파일
→ 3버전 이상으로 가면 없어도 됨. 3버전 이하에서도 동작하도록 호환성을 위해 지키는 규칙
`wsgi.py` : 웹 서버 관련 설정 파일
`manage.py` : Django 프로젝트 유틸리티 (조종기)
settings.py와 urls.py을 주로 만지게 됨
- Django App: 사용자가 생각하는 하나의 기능 덩어리
- 하나의 프로젝트는 여러 개의 앱으로 구성가능
- 하나의 앱으로 모두 개발하는 것도 가능함. (무엇이 좋다기보다 선택의 문제)
- 하지만 여러 개의 앱으로 나누어 개발하는 것을 권장
- 프로젝트와 앱
- 프로젝트(Project) : 어플리케이션의 집합체
- 앱(App) : 각각의 기능 단위 모듈
App 사용하기
- App 생성하기
python manage.py startapp <앱 이름>
python manage.py startapp articles
Django에선 앱 이름을 복수형으로 짓는 것을 권장
- App 등록하기
settings.py 파일열기 → INSTALLED_APPS 리스트 안 맨 마지막줄에 생성한 app이름 추가(','도 넣어주면 좋음)
migrations - DB 히스토리를 관리하는 폴더
__init__.py: 위와 동일
admin.py - 관리자용 페이지 관련 설정
apps.py - 앱 관련 정보 설정 (app setting)
models.py - DB관련 데이터 정의 파일
tests.py - 테스트 관련 파일
views.py - 요청을 처리하고 처리한 결과를 반환하는 파일
'Django' 카테고리의 다른 글
모델 및 마이그레이션 (0) | 2024.08.14 |
---|---|
url 변수, 앱 분리, Naming URL Patterns(장고) (0) | 2024.08.13 |
Django GET 메서드 기초 (0) | 2024.08.12 |
Django Template System 기초 (0) | 2024.08.09 |
장고(Django) 간단 소개 (0) | 2024.08.08 |