🚀 들어가며... 금일 포스팅에서는 .gitignore 파일을 통해 Git으로 프로젝트의 버전 관리를 할 경우 특정 파일이나 디렉토리를 제외시키는 방법에 대해 알아보겠습니다. 📑 내용 # .gitignore 파일 .gitignore 파일은 git에서 관리하지 않을 파일들을 지정해두는 파일 입니다. 프로젝트를 진행하다 보면 자동으로 생성되는 로그파일이나 외부 패키지, 깃에 공유되어서는 안되는 api키와 같은 내용이 작성된 .env 와 같은 파일들이 있을 수 있는데, 이러한 경우에는 .gitignore 에 원격 저장소에 commit 하고 싶지 않은 내용을 작성해두면 git에서 그 내용을 읽어 해당하는 디렉토리 또는 경로 패턴에 위치한 파일들을 버전관리에서 무시합니다. 이 때 주의할 점은 .gitignore ..
🚀 들어가며... 미들웨어를 공부하다가 장고에서 미들웨어는 request는 순서대로 들어오나 response는 역순으로 리턴되는 부분에서 왜 이렇게 설계를 했을까 하는 궁금증이 들어서 간단히 site-packages/django/core/handlers/base.py에 있는 소스를 분석해 보았습니다. 📑 내용 우선 저의 궁금증을 해결해줄 소스를 먼저 보여드리겠습니다. def load_middleware(self): """ Populate middleware lists from settings.MIDDLEWARE_CLASSES. Must be called after the environment is fixed (see __call__ in subclasses). """ self._view_middlewar..
🚀 들어가며... 금일 포스팅에서는 장고에서의 Cross site scripting / Cross site request forgery protection 을 알아보도록 하겠습니다. 📑 내용 Cross site scripting (XSS) protection 웹 어플리케이션에서 웹사이트 관리자가 아닌 이가 웹 페이지에 악성 스크립트를 삽입할 수 있는 취약점입니다. 주로 게시판이나 방명록 등 여러 사용자가 보게 되는 곳에 악성 스크립트가 담긴 글을 올리는 형태로 이루어집니다. 이 취약점은 웹 어플리케이션이 사용자로부터 입력받은 값을 제대로 검사하지 않고 사용할 경우 나타납니다. (ex) Hello! I am a hacker. 장고의 템플릿은 특별히 위험한 문자인 , ', '', & 등을 그들만이 알아볼 수..

🚀 들어가며... 금일 포스팅에서는 SQL에서 흔히 쓰는 DROP, TRUNCATE, DELETE의 차이점들을 알아보겠습니다! 📑 내용 차이점을 서술하기에 앞서 각각의 명령어의 특징을 알아보겠습니다. 1) DELETE - WHERE절을 사용하여 테이블에 있는 데이터를 하나하나 선택하여 제거하는 방식 - WHERE절을 사용하지않고 테이블의 모든 데이터를 삭제하더라도, 내부적으로는 한줄 한줄 일일히 제거하는 과정을 거칩니다. - 처리속도가 늦고, 퍼포먼스에 좋지않은 영향을 줄 수 있습니다. - 원하는 데이터만 골라서 삭제할 때에는 DELETE 사용 / 전체 데이터 삭제할 때에는 TRUNCATE 사용합니다. - 데이터를 삭제하더라도 데이터가 담겨있던 Storage는 Release 되지 않습니다. - DELET..
🚀 들어가며... 이번 포스팅에서는 postgresql에서 cursor.execute로 쿼리를 실행한 결과를 json 형식으로 만들어 반환해주는 방법에 대해 소개해보도록 하겠습니다. 📑 내용 저같은 경우에는 리스트안에 딕셔너리 형태로 표현을 하였고, cursor.description을 이용하여 쿼리결과의 컬럼값들을 뽑은 후 만들고자 하는 딕셔너리형식의 키값으로 넣어주고, cursor.fetchall()을 이용하여 나온 결과값을 딕셔너리의 벨류값으로 넣어줘서 최종적으로는 원하는 결과를 Json형식으로 만들어줍니다. def name_to_json(cursor): """ cursor.fetchall() 함수로 받아온 쿼리 결과를 json 형식으로 만들어 반환해주는 함수입니다. :param cursor: SQL..

🚀 들어가며... 크루스칼 알고리즘과 유니온파인드를 이용하는 문제입니다. 난이도는 골드4 레벨 문제입니다. 🔗 문제 https://www.acmicpc.net/problem/1647 1647번: 도시 분할 계획 첫째 줄에 집의 개수 N, 길의 개수 M이 주어진다. N은 2이상 100,000이하인 정수이고, M은 1이상 1,000,000이하인 정수이다. 그 다음 줄부터 M줄에 걸쳐 길의 정보가 A B C 세 개의 정수로 주어지는데 A번 www.acmicpc.net 📑 내용 [ 문제 설명 ] 동물원에서 막 탈출한 원숭이 한 마리가 세상구경을 하고 있다. 그러다가 평화로운 마을에 가게 되었는데, 그곳에서는 알 수 없는 일이 벌어지고 있었다. 마을은 N개의 집과 그 집들을 연결하는 M개의 길로 이루어져 있다. ..
- Total
- Today
- Yesterday
- ORM
- docker
- Named export
- JavaScript
- Python
- lv2
- db
- Algorithm
- django ORM
- JS
- 탐욕법
- uSWGI
- list
- lv1
- Linux
- container
- This
- django
- static files
- data formatting
- SQL
- Default export
- MVT
- generator expression
- union-find
- programmers
- PostgreSQL
- Greedy Algorithm
- Master & Slave
- react
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |