django
-
쿼리를 줄이자! select_related vs prefetch_related💻 프로그래밍/Django 2019. 7. 21. 22:48
안녕하세요:D! 운동하는 개발자 Jay입니다. 회사에서 코딩을 하면서 가장 많이 했던 실수(지금도 하지만..) 중 하나가 불필요한 쿼리를 보내는 것이었습니다. 사실 SQL문에 대해 잘 알지도 못한 상태이기도 했고, 쿼리 보내는 코드를 잘 못 사용할 경우 서버가 다운될 수 도 있다는 생각 조차 하지 못했기 때문에...ㅎㅎ(로컬에서만 테스트하면 그럴 일이 없기 때문에..) 무튼 쿼리를 잘못 짜면, 반복적인 쿼리로 인하여 서버가 다운이 될 수 도 있습니다. 오늘은 Django ORM 사용할 때 Query 개수를 줄일 수 있는 방법 중 select_relaed, prefetch_related에 대해서 간단히 알아보도록 하겠습니다. * 쿼리셋과 캐싱 (알고 가야 할 내용) 각각의 쿼리셋은 DB에 Access 할 ..
-
validation 체크 노가다를 줄여주는 Django form, modelform, formset 사용💻 프로그래밍/Django 2019. 4. 27. 19:21
안녕하세요! 코딩하는 JAY입니다. 오랜만의 포스팅이네요.. 항상 오랜만 ㅋㅋㅋ 오늘은 제가 회사 프로젝트를 하면서 진짜 고생 많이 하고, 배우게 돼서 정말 다행인 Form, ModelForm, Formset에 대해서 설명하겠습니다. 일단 각각의 정의(?)를 알아보겠습니다. 1. Form(in HTML): HTML폼은 사용자와 웹사이트 또는 어플리케이션이 서로 상호 작용하는 것 중 중요한 기술 중에 하나입니다. form을 사용하여 사용자는 웹사이트에서 웹서버로 데이터를 전송할 수 있습니다.(submit) 일반적으로 데이터는 웹 서버로 전송되지만 웹페이지가 데이터를 사용하기 위하여 사용할 수 도 있습니다. - 관련 참고글 : http://www.nextree.co.kr/p8428/ HTML : 폼(form..
-
Django REST Framework API 문서 자동화 하기(feat.drf-yasg)💻 프로그래밍/Django 2018. 12. 31. 19:10
안녕하세요! Jay입니다:D 이번 포스팅은 DRF(Django REST Framework) API 문서를 만들어 보겠습니다.물론 자동 으로요!! 사실 이번 포스팅은 회사에서 API문서를 수정하거나, 다른 웹페이지로 이동시키는 문제때문에 이것 저것 찾아 보다가 찾아낸 방법입니다. API 한두개야 그냥 직접 타이핑 할 수 있지만, 아주 방대한 API의 경우 매번 새로 타이핑하는건...정말 노가다죠 ㅎㅎ아주 친절하게도 우리에게는 오픈소스라는 희망이 있었고, 다양한 DRF API 문서 자동화 패키지들이 존재했습니다. 예를들어 Django REST Swagger, Apiary, RAML 등이 있는데, 이번 포스팅에서 사용할 패키지는drf-yasg 입니다.참고자료 : https://drf-yasg.readthedo..
-
코린이의 DRF(Django REST Framework) 사용해버리기~💻 프로그래밍/Django 2018. 12. 31. 17:54
안녕하세요! Jay 입니다. 정말 오랜만에 글을 쓰는 것 같아요! ㅎㅎ 그동안 많은 일들이 있기도 했고~ 연말이라 조금 게을러진 마음을 다시 한번 다잡고자 다시 글을 씁니다!새로운 것들을 배우기도 했고요ㅎㅎㅎ:D오늘은 DRF(Django REST Framework)를 CBV(Class-Based_view)로사용하는 방법을 알아보려고 합니다. ※ DRF를 사용한 API만들기 먼저 DRF를 사용하려면 해당 라이브러리를 설치해야겠죠? $ pip install django-rest-frameworkDRF 패키지를 설치하고 pip list 해보시면 아래와 같이 패키지가 설치된 걸 볼 수 있습니다. 이제 API로 사용할 App을 생성해보도록 하겠습니다. $ django-admin startapp movie movi..
-
attempt to write a readonly database 와 unable to open database file💻 프로그래밍/Django 2017. 12. 30. 19:07
안녕하세요! 코딩하는 JAY입니다. 벌써 2017년이 끝나가네요...이틀뒤면 흑흑.. 어서와라! 18년아~~!!(아, 물론 2018년입니다)오늘은 제가 로컬에서 만들었던 Django서버를 AWS에 릴리즈하면서 겪은 문제에 대해 포스팅하려고 합니다.AWS 릴리즈를 위해 똑같이하면 될 줄알고 기본적인 Django, AWS, apache2 세팅을 마치고, db.sqlite3 까지 생성을 완료 했습니다. 다음에 views.py 에서 똑같이 입력받는 POST 데이터를 save()하려고 하는데..... 서버(IP)에 접속하니..... "attempt to write a readonly database" 라는 메시지가 나타나면서 템플릿 페이지가 실행되지 않는 것 입니다.. 사실 여기 까지는 별로 문제가 없었습니다."..
-
requests 모듈의 사용과 DB에 데이터 저장하기💻 프로그래밍/Django 2017. 12. 25. 22:20
안녕하세요! 코딩하는 JAY입니다!!! 정말 오랜만의 포스팅이네요 ㅠㅠ 그동안 나름 토이프로젝트다 뭐다 해서 이것저것 하느라 블로그 포스팅에 조금 소홀했습니다.. 무튼, 이번 포스팅에서는 requests모듈을 이용해 서버에 데이터를 전송하고 DB에 저장하는 방법을 알아보도록 하겠습니다. 1. requests 모듈이란?requests 모듈은 간단한 HTTP 요청처리를 위해 사용되는 모듈이다. 파이썬 기본 내장 모듈이아닌 별개로 만들어진 오픈소스이기 때문에 따로 설치를 해주어야 한다.- POST 요청 requests 모듈의 post함수는 IP와 Data를 인자값으로 받으며, 보시다시피 사용방법은 정말 간단합니다.Data는 Dictionary 형태로 보냅니다. 2. Django에서 DB 마이그레이션 하기1번에..
-
'잡'개발자의 고군분투 챗봇(Somenaeil) 만들기 1부🎁 토이 프로젝트/Somenaeil(챗봇) 2017. 10. 8. 06:27
안녕하세요! '잡'개발자 JAY입니다. 지금부터 제가 현재 개발하고 있는 챗봇 서비스에 대해서 포스팅하려고 합니다. 챗봇을 만드는 과정부터 어떤 서비스를 할 것인지에 대해 순서대로 차근차근 정리하도록 해보겠습니다. 1. 챗봇 개발환경 정하기 챗봇 관련 API를 제공하는 서비스들은 다양한데요. 예를들어 카카오톡, 라인 등 메신저 애플리케이션에서 이런 API들을 제공합니다. 저같은 경우 가장 쉽게 접근할 수 있고 친근한 카카오톡을 사용하기로 했습니다. - 개발환경언어 : python웹프레임워크(서버) : Django서버 : AWS(아마존 웹 서비스)python을 사용한 이유는 그냥 평소에 제가 python 이라는 언어에 관심이 있었고, Django라는 웹프레임워크가 python으로 사용할 수 있기 때문에 D..
-
[Django]파일관리 및 파싱(static file과 media file에 대한 고찰)[2/3]💻 프로그래밍/Django 2017. 9. 28. 18:48
안녕하세요~ 개발하는 JAY 입니다!! (호우~) 오늘은 Django에서 파일관리를 하는 방법중 static file에 대한 내용을 포스팅 하려고합니다 ㅎㅎ 지난 1/3 내용을 보면 static file은 - static file : 개발 리소스로서 정적인 파일 관리(Image, CSS, javascript 등) 요런 내용이였습니다. 자! 이제 실제로 static file을 사용하는 방법에 대해 설명 드리겠습니다. static file을 사용하기 위해서는 3가지를 알아야 합니다. 1. STATIC_ROOT = "'/path/..." STATIC_ROOT는 python manage.py collectstatic 명령어를 통해서 수집되는 static 파일들이 위치하는 절대 경로(디렉토리)입니다. 2. STA..