woncoding

    TIL | 10.27.목 [Django : DRF]

    - Django Rest Framework DRF 사용자 기능 브라우저의 로컬스토리지에 백엔드에서 받은 토큰을 저장할 수 있다. (백엔드) 프론트에서 로컬스토리지의 토큰을 헤더에 실어서 백엔드로 보낼수 있다. [Frontend] - 초기 설정 (https://wonprogrammer.tistory.com/76 참고) 1) 새로운 front파일을 만들어 사용자에게 보여줄 .html 파일을 만들어 준 뒤 .js 파일을 넣어준다. 2-1) 백엔드 서버를 불러올 .js 파일을 만들어 준다. 2-1-1) 불러오기 전, 다른 도메인에서 요청을 보낼땐 별도의 허용이 필요하다. 따라서 백엔드 서버에서 cors 허용해주기 2-1-2) pip install django-cors-headers 2-1-3) 허용한 cors ..

    TIL | 10.26.수 [Django : DRF]

    - Django Rest Framework DRF 사용자 기능 쿠키 세션 방식 로그인과 토큰 방식 로그인의 차이를 이해한다. 쿠키와 로컬스토리지의 차이를 이해한다. JWT의 구조를 이해한다. 장고에서 JWT를 이용해서 회원가입과 로그인을 구현할 수 있다. 브라우저의 로컬스토리지에 백엔드에서 받은 토큰을 저장할 수 있다. 프론트에서 로컬스토리지의 토큰을 헤더에 실어서 백엔드로 보낼수 있다. 포스트맨에서 헤더에 토큰을 실어서 백엔드로 보낼 수 있다. 토큰의 만료기간을 설정할 수 있다. 토큰이 만료되면 refresh token을 다시 받아올 수 있다. [Token - login] 퓨어 장고는 세션이 남게 되서 stateless 하지 않다. 따라서 데이터베이스의 과부하 or 세션이 없어지면 사용자의 계정이 날라..

    TIL | 10.25.화 [Django : DRF]

    - Django Rest Framework DRF Tutorial DRF로 프로젝트 세팅 시리얼라이저 model 활용 models에 정의된 objects들을 딕셔너리 형태 즉, JSON형태의 str으로 만들어 자동으로 response 할 수 있게 만들어 주는게 serializer 이다. 시리얼라이저를 활용해서 CRUD하기 포스트맨으로 DRF 개발을 테스팅 프로젝트에 Swagger를 적용하기 swagger url 설정 settings에 'django.contrib.staticfiles', 'drf_yasg' 설정 클래스형 뷰를 작성할 수 있다. 함수와 다르게 class는 추후에 다른 함수나 class의 상속이 가능하다. fetch api를 써서 프론트엔드에서 DRF의 데이터를 가져와서 나타낼 수 있다. f..

    TIL | 10.24.월 [Django : DRF]

    - Django Rest Framework HTTP와 웹의 동작 방식 프론트엔드와 백엔드의 역할을 이해한다. HTTP 메시지의 구조를 이해한다. Request와 Response 메시지의 역할을 이해한다. HTTP의 상태코드의 역할을 이해한다. HTTP의 헤더의 역할을 이해한다. 웹의 요청 흐름을 이해한다. State와 Stateless의 뜻을 이해한다. Restful한 API 설계를 할 수 있다. [웹 브라우저의 흐름] 도메인 주소 조회 HTTP 요청 메세지 작성 socket 라이브러리를 통해 전달 TCP/IP 작성 (← 이 안에 HTTP 메세지 포함) [URI] 특정 리소스를 식별하는 통합 자원 식별자(Uniform Resource Identifier)를 의미한다 (정확한 주소는 URL이 가지고 있음)..

    TIL | 10.21.금 [머신러닝 / Django]

    (B2 | 3_team_project) - 프로젝트 피드백 및 수정사항 [코드 컨벤션] https://github.com/kbm1933/B2_IIEII_ML/blob/main/yolo_code/detect.py#L15 함수에서 코드스타일(개행)을 지켜주는 것이 가독성에 좋다. def get_img(idx): model = torch.hub.load('ultralytics/yolov5', 'custom', path='yolo_code/last.pt', force_reload=True) imgmodel = FileUpload.objects.get(id=idx) #업로드 한 이미지 img_bytes = imgmodel.imgfile.read() img = im.open(io.BytesIO(img_bytes))..

    WIL | 10.23.일 [10.17.월 - 10.21.금]

    (B2 | 3_team_project) 팀프로젝트 주간 - KPT 회고 [프로젝트 개요] django + yolov5 deep learning을 이용한 과일 인식 홈페이지 제작 학습된 데이터 기반으로 사용자가 업로드한 과일 사진 분류 프로젝트 명 : 사물인식 프로젝트 필수 작업 : django와 머신러닝 모델의 연동 추가 작업 : 로그인, 회원가입, 게시물 쓰기 K(keep) 팀원이 서로 격려하고, 모르는 것에 대해 질문에도 사려 깊게 알려주며 서로를 이끌어가는 협력의 자세 각자의 의견을 최대한 존중하고 배려하는 모습 끝까지 포기하지 않고 시도해서 할 수 있는 것을 완성해내는 노력 기한 내에 안정적으로 프로젝트를 마무리하는 습관 슬랙/git을 통한 활발한 의사소통과 트러블 슈팅 기록 p(problem) ..