본문 바로가기

Backend/Django6

[Django] HttpRequest와 HttpResponse HttpRequest 객체 클라이언트로부터의 모든 요청 내용을 담고 있으며 함수 기반 뷰(FBV) : 매 요청 시마다 뷰 함수의 첫번째 인자 request 전달 클래스 기반 뷰(CBV) : 매 요청 시마다 self.request를 통해 접근 Form 처리 관련 속성들 .method : 요청의 종류 "GET" 또는 "POST" 로서 모두 대문자 .GET : GET 인자 목록 (QueryDict 타입) .POST : POST 인자 목록 (QueryDict 타입) .FILES : POST 인자 중에서 파일 목록 (MultiValueDict 타입) MultiValueDict (1) dict을 상속받은 클래스 동일 key의 다수 value를 지원하는 사전 http 요청에서의 하나의 key에 대해서 여러 값을 전달.. 2023. 12. 29.
[Django] 프로젝트 환경 만들기 (2) setup.cfg 파일 만들기 다양한 파이썬에서 사용되는 도구 파일 (setup-tools, Pytest, Flake8, isotta 등..)에 대해 표준화된 형식으로 구성 설정을 정의하는 방법을 제공한다. ini 파일 형식이며, 주의할 점은 cfg파일이 .toml 파일, .ini 파일 등의 다른 구성 파일과 함께 일반적으로 루트 수준에 위치한다. [flake8] max-line-length = 120 # 최대 라인 길이 # 스타일과 품질을 확인할 때 제외할 파일 exclue = .tox,.git,*/migrations/*,*env*,*venv*,__pycache__,*/staticfiles/*,*mediafiles/*,node_modules [isort] line-length = 88 skip = ve.. 2023. 12. 25.
[Django] 환경별 패키지 관리 requirements base.txt django 웹 프레임워크 django-environ Django 애플리케이션에 대한 환경변수 구성 가능 djangorestframework Django로 웹 API를 구축하기 위한 툴킷 django-cors-headers Cross-origin-resource sharing course headers(교차 출처 리소스 공유 코스 헤더를 응답에 추가) 이를 통해 다른 출처에서 Django 애플리케이션에 대한 요청을 브라우저 안에서 허용한다. django-filter Django Rest 프레임워크에 대한 필터링 지원 django-autoslug Django 모델에 자동화된 슬러그 필드를 추가하는 패키지 django-countries 모든 최상위 국가 데이터를 포함하.. 2023. 12. 24.
[Django] Model에 Field 추가시 주의사항 Model에 Field를 추가하는 상황 기존 모델에 필드를 추가해야 하는 경우각 있다. 기존 데이터베이스에 데이터가 없다면 상관 없겠지만 이미 데이터가 있다면 필드를 추가하는 데 있어 여러 고민이 생긴다. 나는 앞서 title, rating 두 컬럼만 가진 Book 객체에 2개의 데이터를 넣었다. 그리고 author, is_bestselling 객체를 추가하여 migration 파일을 다시 재정의 하려고 한다. 그러자 나는 아래와 같은 응답을 받았다. 간단히 요약하자면 새로운 컬럼에 대한 default 값이 정의되어 있지 않아 기존 데이터(existing rows)에 어떤 값을 넣어야 할지 모르겠다는 것이다. 그리고 옵션을 Select 하라고 한다. 기존에 존재하는 모든 데이터들에 신규 컬럼에 대해 nu.. 2023. 11. 19.