일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 구글 드라이브
- 리스트
- 추천 영상
- 바로학교
- venv
- 그리디 알고리즘
- DB
- 파이썬
- 깃허브
- gpu 병렬처리
- G-Suite
- 아이폰
- Django
- MongoDB
- List
- python
- pymongo
- selenium
- 유튜브
- 링크
- flask
- 알고리즘
- 탐욕 알고리즘
- 코딩
- 장고
- Google Drive
- 단축어
- 충북
- nocookie
- docker-compose
- Today
- Total
목록Django (12)
SSAMKO의 개발 이야기
1. 가상환경 실행 2. pip install gunicorn 3. manage.py가 있는 폴더로 이동 4. gunicorn 설정 gunicorn --bind 0.0.0.0:8000 myProject.wsgi:application myProject에는 본인의 project이름을 넣는다. 스크립트 생성 /etc/systemd/system/gunicorn.service [Unit] Description=gunicorn After=network.target [Service] User= Group=www-data WorkingDirectory=/path/to/yourProject ExecStart=/path/to/yourProject/venv/bin/gunicorn \ --workers 3 \ --bind u..
인스타그램 클론 코딩 중 이미지를 받아서 저장할 때, 모바일 특화 컨텐츠니까 굳이 큰 사이즈 이미지로 저장할 필요가 없겠다 싶어서 너비를 700픽셀로 리사이즈 할 필요가 있었다. # views.py def write(request): template_name = 'post.html' context = {} if request.method == 'POST': writer = request.POST.get('writer') text = request.POST.get('context') # 이미지는 option try: image = request.FILES['visitor_image'] # image resize required image = rescale(image, 700) except: image = ..
회원가입 시 하나의 폼 작성으로 school과 adminuser 그리고 Comroom 테이블에 동시에 데이터를 생성해야 했다. form_valid단계에서 각 field의 정보들로 세 개의 Model에 대한 인스턴스를 생성해서 저장하면 되는 그리 어렵지 않은 문제였지만, 만일 하나의 테이블에는 정상적으로 생성이 되고, 다른 테이블에서는 실패한다면 다시 회원가입을 시도하려고 할 때 문제가 발생할 수 있다. 이런 문제를 해결하기 위해 데이터베이스 트랜젝션Database transaction을 이용해야 한다. 데이터베이스 트랜젝션이란, 두 개 이상의 Query를 처리할 때 하나라도 실패하면 전체를 되돌리도록 query를 단일화 하는 작업으로, ACID라는 특성을 갖는다. Atomic(원자성), Consisten..
기존 위와 같던 로그인 화면에 아래와 같이 비밀번호 분실시 재설정을 할 수 있도록 바꾸고자 했습니다. 클릭하면 새 창을 띄우지 않고, Modal로 처리하고 싶었습니다. 이후 확인을 누르면 비밀번호 재설정 메일을 보내는 식으로 View를 구성하고자 했는데요. 여기서 가장 큰 어려움이 새 창이 아니라 Modal을 사용하려면 한 페이지에 2개의 폼을 띄워야 한다는 점이었습니다. 단순히 View 클래스만 상속받아서 복잡하게 코드를 짜면 가능은 하겠지만 Django답지 못하고, Class-based View의 장점을 살리지 못했기에 고민하며 구글링을 시작했습니다. 몇 가지 방법이 나왔지만 가장 만족스러웠던 건 https://www.codementor.io/@lakshminp/handling-multiple-for..