본문 바로가기

분류 전체보기84

Django Lightsail(Ubuntu)로 서비스하기 1. 아마존 웹 서비스로 프로젝트 옮기기 Linux 계열의 Ubuntu를 설치하겠습니다. 인스턴스 스펙을 설정합니다. 저는 제일 작은걸로 인스턴스를 생성하고 조금 기다렸다가 생성하면 실행(Running)됩니다. 우측 상단에 콘솔을 클릭합니다. 'github'라는 폴더를 생성하고 복사한 github URL을 입력합니다. 해당 깃의 username과 password를 입력하라고 하는데 비밀번호 말고 토큰으로 입력하라는 것 같습니다. 토큰을 생성해봅시다. 깃 우측 상단 setting에 들어가면 Developer settins라고 있습니다. 토큰 생성 버튼을 클릭합니다. Note는 토큰 설명 Expiration은 토큰의 유효 기간을 의미하고 Select scopes에서 용도에 맞는 권한들을 지정해줍니다. 설정을.. 2022. 7. 7.
Django PostgreSQL 사용하기 PostgreSQL 사용 설정하기 1. web 컨테이너는 db 컨테이너가 실행된 이후에 시작해야 한다는 의미로 depends_on을 db로 설정합니다. 2. 도커에서 공식으로 제공하는 postgres:12.0-alpine을 사용합니다. 3. volumes를 설정해서 컨테이너 실행이 중단되더라도 데이터베이스의 내용이 사라지지 않도록 합니다. 4. 사용자명, 암호, 데이터베이스명을 지정합니다. postgreSQL을 사용하도록 설정을 변경합니다. settings.py에서 활용할 수 있도록 .env.dev 파일을 수정합니다. psycopg2 모듈을 설치하고 도커 실행을 위해 모듈을 추가해줍니다. 현재 도커가 실행 중이니 새 터미널을 열어 마이그레이션을 진행합니다. 마이그레이션이 완료되면 웹 사이트는 잘 나오지만.. 2022. 7. 5.
도커(Docker)로 배포하기 도커란? 다른 하드웨어와 운영체제에서 작업하더라도 동일한 환경을 갖출 수 있도록 도와주는 기술입니다. 즉, 개발과 배포 환경이 달라도 따로 환경설정 과정을 거치지 않고 실행이 가능하게 합니다. 1. 도커 설치하기 작업 관리자를 열어 가상화 여부를 확인합니다. 도커 홈페이지(docker.com)에 접속하여 윈도우용 Docker Desktop을 설치합니다. 위와 같이 에러가 뜰 경우 해당 페이지의 공식 메뉴얼을 참고하여 커널을 업데이트 합니다. docker의 버전이 어떤 경로에서든 동일하게 나오면 성공입니다! 2. 도커 파일 만들기 모듈 리스트 만들기 현재 여러 라이브러리들이 가상환경(venv)에 설치되어 있습니다. 이것들을 도커 컨테이너로 옮겨야 합니다. 'pip freeze > requirments.tx.. 2022. 7. 4.
Django 검색 기능 구현 1. 검색 기능 JavaScript 추가 검색창에 Enter 또는 Go! 버튼 클릭 시 기능이 작동하도록 JavaScript를 추가합니다. 검색 값을 가져오기 위해 input 박스에 id를 지정하고 버튼에 onclick 함수를 부여합니다. 검색 버튼에서 지정했던 searchPost 함수를 구현합니다. search-input을 id로 가지는 input 박스의 값을 가져와서 length로 길이가 1 이상인지 판단합니다. 한글자 이하면 짧다는 알럿을 띄웁니다. 검색창에서 엔터키를 눌렀을 때 위에서 구현한 searchPost 함수를 실행하도록 구현했습니다. jquery를 사용했기 때문에 위의 코드를 추가합니다. 2. 검색을 위한 백엔드 작업 views의 PostSearch로 가도록 url을 설정해줍니다. 1. .. 2022. 6. 30.
Django pagination 구현 view의 PostList에 paginate_by를 추가합니다. 지정한 숫자만큼 한 페이지에 나타납니다. 1. {% if is_paginated %} view에서 지정한 page의 갯수 이하일 경우 보이게 하지 않기 위한 조건 2. {% if page_obj.has_next %} 버튼 비활성화를 위해 다음, 이전 페이지가 있는지 알아내는 조건 3. page_obj.next_page_number 다음 혹은 이전 페이지 번호 제대로 출력되는 것을 확인할 수 있습니다. https://g.co/kgs/A6fcWi Do it! 장고+부트스트랩 파이썬 웹 개발의 정석: 웹 기초부터 블로그 개발·배포·운영까지, 만들면 만들면서 배우는 파이썬 웹 개발 A to Z!파이썬 기초 문법만 알면 나만의 블로그 사이트를 만들 .. 2022. 6. 30.
django-crispy-form을 사용하여 폼 모양 꾸미기 1. django-crispy-form 설치하기 pip install django-crispy-forms 콘솔창에서 django-crispy-forms를 설치합니다. CRISPY_TEMPLATE_PACK = 'bootstrap4' 설치 완료 후 settings.py 파일의 INSTALLED_APP에 crispy_forms를 추가하고 crispy_forms의 스타일을 bootstrap4로 하겠다고 지정합니다. 2. html을 수정해 crispy_forms 적용하기 crispy-forms를 적용할 수 있도록 맨 위에 {% load crispy_forms_tags %}를 추가하고 폼이 테이블 형태로 나타나지 않도록 {{ form }}에 | crispy를 추가합니다. post_update_form.html도 동.. 2022. 6. 27.