싸이트를 운영하다보면 종종 예상하지 못한 문제가 생긴다. 로컬에서야 이럴때 그냥 프린트문으로 찍어보면서 해결해도 되지만, 실제 프로덕션에서 그러기는 어렵다. 이 때 도움되는 것이 로그 파일인데 장고에서는 로깅하는 것을 자체에서 제공해주고있어 매우 편리하게 적용이 가능하다! 장고의 로깅은 파이썬에 빌트인으로 들어가 있는 로깅 기능을 사용하고 있어 만약 장고 문서에 설명이 부족한 것 같으면 파이썬의 로깅에 대한 설명을 보면 된다. 어쨌건 파이썬의 로깅은 아래의 네 부분으로 이루어져있다. 나름 번역을 했으나 이게 뭔 말인지 모르겠다면 원문을 보는 편이 낫다.... 원문링크 Loggers - 다섯 개의 로그레벨이 있다. DEBUG - INFO - WARNING - ERROR - CRITICAL 순으로 높아진다...
에듀캐스트에서 이진석님의 강좌 '리액트와 함께 장고 시작하기 Complete'를 다 들었는데 막상 정리를 안 해놔서 강좌 내용을 바탕으로 장고 이론을 정리해보기로 했다. ORM이란? Object-Relational-Mapper의 약자로 프로그래밍언어의 OOP 스타일로 쿼리를 작성할 수 있게 해주는 것. 장: 어떤 디비를 사용하든지 이미 잘 알고있는 언어를 사용해 디비를 조작할 수 있으므로 매우 편리하다. 단: ORM을 사용함으로서 오버헤드가 발생하며, SQL을 통해 튜닝하는 것이 ORM을 통해서는 불가능할 경우가 많다. Django Models 장고 ORM은 RDB만 지원한다. (따라서 MongoDB 등의 NoSQL을 쓴다면 장고보다는 다른 파이썬 프레임워크를 쓰는 것이..) 상황에 따라 다르겠지만 되도..
웹사이트를 만들때 페이지마다 허용되는 유저가 같으면 곤란한 일이 많이 발생할 것이다. 예를 들어 관리자 페이지인데 일반 유저가 들어간다던가, 아니면 유료로만 이용이 가능한 페이지인데 로그인도 안한 유저가 사용한다던가 하는 경우 말이다. 이런 일을 방지하기 위해서 Django View 상에서 동작하기 전에 무조건 유저를 검사해주도록 하기 위해 장고 뷰의 기본 메서드중 dispatch와 데코레이터를 활용해보기로 했다. 우선 기본 뷰의 메서드 중에는 dispatch라는 녀석이 있다. 이 녀석이 뭐냐면 request와 기타 argument를 입력받고 HTTP Response를 리턴하는 놈인데, HTTP 메서드를 검사하고 해당 메서드와 일치하는 메서드로 연결을 해주는 녀석이다. GET은 get()으로, POST는..
Build a Backend REST API with Python & Django - Advanced [링크] 이전 회사에서도 장고로 api 형태 비슷한 것을 만들어서 템플릿으로 던져주는 형태를 취하기는 했었는데 이전회사의 경우엔 django template tag 를 많이 써서 얽혀있는 부분이 많아서 등의 이유로 Django REST API는 사용하지 않았었다. 때문에 익혀볼 기회가 없었는데 잠시 쉬어가는 김에 Django REST API를 배워보자! 싶어서 들었던 강의다. 결론적으로 좋은 강의기는 했는데 내가 바라던 바와는 조금 다른 데가 있는 강의였다. 이 강의는 Recipe 앱을 만드는 과정을 통해서 Django RESTAPI를 익히는 내용인데 사용하는 기술들에 대해선 간단한 설명과 링크를 첨부해..
- Total
- Today
- Yesterday
- 한빛출판사
- askcompany
- Singapore
- SQL기초구문
- Docker
- 한빛미디어
- 개발자리뷰어
- 길벗출판사
- Python
- 파고다강남후기
- 파고다후기
- 싱가포르
- udemy
- 싱가폴여행
- 싱가폴
- 그래프QL인액션
- 나는리뷰어다2022
- 동남아
- 다시미분적분
- 머신러닝파워드애플리케이션
- SRE를위한시스템설계와구축
- 유데미강의
- 해외여행
- BookDiscussion
- django
- 혼자공부하는얄팍한코딩지식
- 리액트와함께장고시작하기
- 파고다갓생후기챌린지
- 아토믹코틀린
- 나는리뷰어다
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |