목록분류 전체보기 (82)
'll Hacker
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/SirEc/btsKUlY2vnD/iSIHQ4CfBbCTw33CAmCcb0/img.png)
Django Authentication이란?HTTP 헤더에 사용자 이름과 비밀번호를 포함하여 인증하는 방식, 주로 테스트 용도로 사용 설정이 간단하고 빠르게 구현이 가능하지만, 보안이 낮아서 HTTPS와 함께 사용해야 안전하다.매 요청마다 자격 증명을 포함하므로, 인증 정보가 노출될 수 있다. Session-Based AuthenticationDjango의 기본 인증 방식,사용자가 로그인하면 서버에 세션을 생성하고 세션ID를 클라이언트에 쿠키로 저장함.💡쿠키?웹 서버가 생성하여 웹브라우저로 전송하는 작은 정보 파일웹 브라우저는 수신한 쿠키를 미리 정해진 기간 동안 또는 웹 사이트에서의 사용자 세션 기간 동안 저장함.웹 브라우저는 향후 사용자가 웹 서버에 요청할 때 관련 쿠키를 첨부함.사용자 기기의 지정..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/w7vIG/btsKMLQjGKc/nL1MyXrKwtPBDqWvouOcGk/img.png)
django 웹 프레임워크를 기반으로 한 도구세트로, django를 이용해서 REST api를 만들기 위한 라이브러리 DjangoDjango REST Framework자체 웹 템플릿에게 데이터 전달풀스택 개발을 위한 목적으로 사용html을 응답플랫폼의 클라이언트에게 데이터를 전달백엔드 API 서버 개발을 위한 목적으로 사용됨.json 형태의 response 응답 RESTful API? 간단하고 효율적이고 호환성이 높음!REST : 인터넷에서 컴퓨터 또는 시스템 간 정보를 주고 받는 방식의 하나- URL과 웹 페이지를 보거나 변경하는 행위를 사용하여 정보를 쉽고 간단히 찾을 수 있게 함.- 웹 아키텍처 스타일로 리소스의 상태를 HTTP 메서드를 통해 전송하는 방식 REST 원칙에 기반해 서버의 리소스를..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/dc0g06/btsJ28TLkTD/ctsP8ycOHX1dg3RrDQ7VpK/img.png)
회원가입 및 로그인Django 의 내장 시스템은 사용자 계정, 그룹, 권한, 쿠키 기반의 사용자 세션을 처리 [모델 백엔드]사용자 모델(User 객체) : Django는 username, password, email, first_name, last_name 등의 필드를 포함한 내장 사용자 모델을 제공- 일반적으로 사이트와 상호작용하는 사람들을 나타내며 액세스 제한, 사용자 프로필 등록, 콘텐츠와 작성자 연결 등과 같은 작업을 활성화하는데 사용됨.폼 : Django는 로그인, 로그아웃, 비밀번호 재설정, 비밀번호 변경 작업에 사용할 수 있는 준비된 폼을 제공뷰 : Django에는 사용자 인증 작업을 처리하는 뷰가 포함되어 있음.미들웨어 : Django는 주어진 HTTP 요청과 관련된 사용자를 자동으로 결정..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/cRjBN1/btsJVYJ9eNn/K5KqNKeF0txPa056hvQiC1/img.png)
MVT패턴에서 Model을 살펴보자.MVT 패턴에 대한 설명은 아래 블로그를 참고하면 되겠다!https://successing.tistory.com/89 [WIL] 2주차, Django의 MVT 아키텍처 이해MVT 패턴Model- 데이터베이스와의 상호작용을 관리하여, 데이터 구조와 비즈니스 로직을 정의- Django ORM을 통해 데이터를 쉽게 조회, 저장, 업데이트 가능View- 클라이언트의 요청을 받아 필요한 데successing.tistory.com 데이터 구조 각 클래스는 데이터의 테이블과 매칭되며, 클래스 속성은 테이블의 열에 해당된다.관계 정의테이블 간의 관계정의ForeignKey, ManyToManyField 등을 사용하여 테이블 간 관계를 설정1:1Models.OneToOneField( )..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/lpBJp/btsJO9GjEwX/f6XZDeRUPg7Kmo07wHdZQK/img.png)
MVT 패턴Model- 데이터베이스와의 상호작용을 관리하여, 데이터 구조와 비즈니스 로직을 정의- Django ORM을 통해 데이터를 쉽게 조회, 저장, 업데이트 가능View- 클라이언트의 요청을 받아 필요한 데이터를 처리하고, 응답을 준비- Model에서 데이터를 가져와 Template에 전달하여 최종 응답을 생성Template- 사용자에게 보여질 HTML 파일을 담당하며, View에서 전달된 데이터를 시각적으로 표현- Django의 템플릿 언어를 사용해 동적으로 데이터를 표시 가능웹 클라이언트의 요청을 받고, 장고에서 MVT패턴에 따라 처리하는 과정클라이언트로부터 요청을 받으면 URLconf를 이용하여 URL을 분석URL 분석 결과를 통해 해당 URL에 대한 처리를 담당할 뷰를 결정뷰는 자신의 로직을..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/4ojj0/btsJOFwOBTy/chsyTb4kHlmoOIVxQxkqpk/img.png)
문제 이해아이디어string 클래스를 사용처음엔 search문자열을 찾으면 "0"으로 대체할려고 하거나 지울려고 하는데, out of range가 계속 나와서find 반환값으로 자리에서 많이 벗어나면 그 반환값의 위치에서 문자열은 찾을 수 없게 되고 그러면 break되는 것을 생각하였다.#include #include using namespace std;int solution(string document, string search) { int cnt = 0; size_t i = 0; while (true) { // search 문자열을 찾으면 해당 위치 반환, 못 찾으면 npos 반환 i = document.find(search, i); ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/olIx1/btsJLvijkfr/ik7nGgrm2sRlxmfLjx2l1K/img.png)
https://www.acmicpc.net/problem/11399 문제를 이해를 해보자면 모두 5명이고각 사람 당 돈을 인출하는데 필요한 시간을 5번 입력받게되는데, 문제 그대로 이해하면 될 것 같다.각 사람 당 기다리는 시간을 합을 하면 되고그 합을 또 합을 하게 되는...... 약간 ptsd올 수도 있음...왼쪽 이미지를 보면 이해가 될 것 같다. 나는 돈을 인출하는데 필요한 시간이 짧은 사람이 앞에 올수록그니까,, 현재 상황에서 시간효율성이 더 좋은게 뭔가 보면 시간이 짧은게 더 좋은 것 같아서 오름차순 정렬을 한 뒤에, 누적합하면 될 것 같다. 코드 참고#include #include #include using namespace std;int solution(int N, vector ..