본문 바로가기

django4

[django, python]개발 서버 배포를 위한 환경 변수 설정 django를 기반으로, 개발 서버 배포를 위한 환경 변수(environment variable) 설정에 대해 설명한 문서입니다. 0. 환경 변수를 사용하는 이유 다른 개발자들과 원활한 협업 : 다른 개발자들이 내 코드를 봤을 때 쉽게 이해할 수 있도록 코드가 간결할 필요가 있습니다. 또한 작업 효율을 높이기 위해서는 github에서 내 코드를 내려받았을 때 바로 실행해볼 수 있도록 세팅해야 합니다. 노출되어서는 안 되는 값 처리 : 프로젝트 중 노출되서는 안 되는 비밀값들이 존재합니다. 예를 들어 AWS에서 주어진 access key id나 access secret key 등이 그렇습니다. 이를 환경변수로 처리함으로써 개인정보를 보호할 수 있습니다. 1. python-decouple 파이썬 라이브러리 .. 2022. 12. 19.
[django]django에서 DB 다루기 django에서 생성한 db를 ORM으로 다루는 방법입니다. 1. get 조건에 해당하는 한 개의 object만 가져올 수 있다. 조건에 해당되는 object가 2개 이상일 경우 MultipleObjectsReturned 에러가 발생하게 된다. 'DB table명'.objects.get(column_1='조건 1', column_2='조건 2') 2. filter 조건에 해당하는 여러 개의 object를 queryset으로 가져올 수 있다. 'DB table명'.objects.filter(column_1='조건 1', column_2='조건 2') get의 경우 조건에 맞는 object가 없을 경우 ObjectDoesNotExist 에러가 발생하지만, filter의 경우 조건에 맞는 object가 없으면.. 2022. 2. 24.
[django]postgres DB와 연동하기 postgres DB와 django를 연동, 사용하는 방법에 대해 서술한 문서입니다. 아래의 문서는 models.py에서 table 및 column을 이미 생성한 후라고 가정하겠습니다. 0. postgresql이란? postgresql, 혹은 postgres DB는 데이터베이스 관리 시스템(DBMS) 중 하나로 무료로 제공되고 있습니다. RDBMS 오라클(Oracle)의 개발자들이 개발에 많이 참여하였기 때문에 오라클과 비슷한 부분이 있습니다. 한국에서 많이 사용되진 않지만 전세계적으로 DB 점유율이 꾸준히 증가하는 DB입니다. 무료임에도 부지런한 업데이트로 지속적인 기능 추가가 이루어지고 있습니다. 또한 라이선스에 대한 비용 문제가 발생하지 않고, 오랫동안 사용된 오픈소스인만큼 안정적이고, 신뢰도가 높.. 2022. 2. 14.
[django]drf-yasg로 swagger 적용하기 다음은 django로 어플리케이션을 생성할 때 swagger를 적용, 활용하는 방법을 정리한 문서입니다. swagger는 함께 협업하는 개발자들을 위해 최대한 구체적인 설명을 적고, 보기 쉽게 만드는 게 좋습니다. 보통 swagger는 개발/테스트 서버에서는 배포를 진행하나, 실서버에서는 보안 문제로 배포를 진행하지 않습니다. 0. 준비 먼저 django와 django를 설치할 가상환경을 구성해야 합니다. 가상환경은 conda, virtualenv 등 여러 개의 옵션을 선택할 수 있지만, 여기서는 python 3.4 이상에 기본적으로 제공되는 pyenv를 사용하겠습니다. 가상환경 구성 $ python -m venv env django 설치 django의 버전은 어떤 버전을 선택하든 큰 상관은 없습니다. .. 2022. 2. 13.