코딩일지/TIL: Today I Learned 84

20221215 TIL

오늘의 한 일 최종 프로젝트 - 중간발표 중간 발표 시연 영상 - https://www.youtube.com/watch?v=MLs9ZU12dwo 만들고 보니까 비는 파트들이 많네; 빠릿하게 펫프로필페이지랑 북마크 페이지 만들고 다른 팀원들 개선점 합쳐서 배포쪽 들어가보면 될듯싶다 인상깊게 본 팀 - 배포완료, 글쓰기 창 구현에 텍스트 에디터 사용 와 벌써 배포까지 완료한 팀도 있네 ㄷㄷ; aws 크레딧 신청이 계속 반려되서 실습에 부담이 있어 진행이 더뎠다고 생각되는데 반성하게됩니다.. 참조 : https://ckeditor.com/ WYSIWYG HTML Editor with Collaborative Rich Text Editing Rock-solid, Free WYSIWYG Editor with Co..

20221214 TIL

오늘의 한 일 최종 프로젝트 - 중간발표 준비, aws 배포 공부 중간발표 준비 css작업 이후에 작동되지 않는 자바스크립트 부분들 다시 수정 부트캠프 들어오고 처음 배울때부터 생각했던거지만 대부분의 오류는 오탈자라고 보면 되는것같다 ㅋㅋ 메인 페이지 준비되는대로 시연영상 촬영 예정 AWS 배포 백엔드부분 ec2 - docker-compose 이용해 nginx - gunicorn - postgresql 연동해 도메인 연결 및 https 적용 프론트엔드 부분 s3 - 클라우드 컨트롤 이용해 https 적용, 라우터 53 사용해 도메인 연결 백엔드 settings.py cors 설정에 프론트엔드, 백엔드 도메인 추가 프론트엔드 api.js - const back_end_url, front_end_url 로컬..

20221213 TIL

오늘의 한 일 최종 프로젝트 - ec2 배포 공부 nginx - gunicorn - postgresql AWS 크레딧 배포 관련 참조 : 도커 실무 강의, AWS 강의 백엔드 부분을 docker-compose를 활용해 nginx, gunicorn, postgresql을 백엔드 프로젝트에 연동시켜서 돌리는건 이해가 가는데 결국 우리 프로젝트를 실제로 ec2환경에 올려서 작동시켜야하는데 프론트엔드를 어떻게 연동시키는건지 잘 감이 안잡힌다.. S3에 올려서 도메인과 연동시키면 되는건가? 이러면 cors 설정은 어떻게 적용시켜야 하는거지? 복습하면서 본 이 구조대로면 원래 nginx쪽에 프론트엔드 파일이 들어가는게 맞지않나 하는데 뭔가 감이 전혀 안잡힌다.. 참조 : https://docs.aws.amazon...

20221212 TIL

오늘의 한 일 최종 프로젝트 - 도커 공부, 페이지네이션(백엔드, 프론트엔드), search, aws포인트 신청 Docker 저번 프로젝트때도 팀원분들이 ec2환경에서 프로젝트를 배포하려고 시도했다가 잘 안됐다는 얘기를 들었는데, yolo나 스타일변환같은 머신러닝 모델을 돌리면서 필요한 Pytorch라던가 tensorflow 등을 돌리려면 도커 이미지 파일을 더 신경써서 써야 하는것 같다. 도커 허브에서 yolov5를 검색해보니 이미지 결과가 나오긴 하는데 얘를 가져다 쓰면 되려나? 일단 aws 포인트 신청부터 확정이 나면 실험해보겠는데.. AWS 크레딧 신청 없는 말주변에 최대한 불려가면서 설명 쓰는중.. 왜 안되는건데 흑흑 Pagination 백엔드부분과 프론트 일부분도 이전 유화 프로젝트때 써보았으..

20221209 TIL

오늘의 한 일 최종프로젝트 - 프로필페이지, 수정페이지 연동 / 네비게이션 바 분리 프로필 페이지(myprofile, petprofile), 수정페이지 연결 네비게이션 바 분리 트러블슈팅 TypeError: Cannot read properties of null (reading 'value') getElementById().value를 통해 변수를 지정하려 했는데 자바스크립트가 html보다 먼저 로딩되거나 모종의 이유로 정보를 가져올 수 없을 때 나오는 에러. 이번 경우에는 다행히도 id의 오타로 일어난 헤프닝이여서 금방 해결할 수 있었다 TypeError: Cannot set properties of null (setting 'innerText') 네비게이션 바 분리 도중 로드되지 않은 네비게이션 ht..

20221208 TIL

오늘의 한 일 최종 프로젝트 - 프론트엔드 연결(JS), 소셜 로그인 관련 프론트엔드 연결 이전 유화 프로젝트때 했던 자바스크립트 방식으로 각 페이지에 CRUD 설정을 보내고 받아온 json형태의 response를 원하는대로 조리해서 띄우는 것은 동일했다. 이제 요청을 보내고 받은 데이터를 이용하는건 자연스러워졌는데 역시나 html쪽 css의 문제가.. 데코가 제일어려워 소셜 로그인 관련 소셜 로그인 마지막에 받아오는 access_token과 refresh_token을 우리가 사용하는 방식으로 어떻게 로그인에 사용할 수 있을까 고민하다가 강민철 튜터님께 상의를 드렸다. 우리가 지금 사용하고 있는 로그인 형식은 simpleJWT를 이용하는 백엔드 주소에 자바스크립트로 이메일과 비밀번호로 post 요청을 보..

20221207 TIL

오늘의 한 일 최종 프로젝트 - 프론트엔드 연결 프론트엔드 연결 트러블 슈팅 - 병변 탐지 모델 포스트맨으로는 잘 적용되던 병변탐지가 자바스크립트를 통해 html상에서 이미지 파일을 받아서 POST 요청을 보내려고 하니까 처음에는 잘 작동하더니 이후로 잦은 에러가 발생 django.utils.datastructures.multivaluedictkeyerror: 'input_img' 에러 검색해보니 요청을 보낼 때 파일 없이 글만 작성하면 발생한다고 한다. [07/dec/2022 15:45:43,641] - broken pipe from ('127.0.0.1', 9436) 에러 잦은 입출력 호출로 발생한다고 한다. 예를 들어 처리 중인 요청을 사용자가 기다리지 않고, 새로고침이나 종료, 연속 클릭 등으로 ..

20221206 TIL

오늘의 한 일 최종 프로젝트 - yolov5 사물인식 모델 학습 관련 소셜 로그인 YOLOv5 모델 커스텀 트레이닝 1번 로보플로우를 이용하여 수작업 라벨링과 2번 방법에서 고민하던 도중에 아무리 생각해도 이미 라벨 박스 데이터가 있는데 이것을 이용하지 않으면 안될 것 같아 2번 방법을 더욱 고민해보았다. json형태의 라벨을 yolov5에 맞춰 커스텀 하는 방법에 대해 고민중, 상호 튜터님께 질문드려 답을 얻을 수 있었다. 여기서 우리가 원하는 것은 x, y 좌표와 width height를 가로 세로 비율로 나눠서 0~1의 값으로 나열하는 형태의 txt파일로 저장하는것. import glob import json json_list = glob.glob('*.json') for json_file in j..

20221205 TIL

오늘의 한 일 최종 프로젝트 - 로보플로우 라벨링작업, 소셜로그인 공부, 페이지네이션 관련 소셜 로그인 저번 프로젝트때 소셜로그인 파트를 다시 훑어보는데 일단 인증과정을 거쳐서 액세스토큰까지 발급은 성공했던 것으로 보인다. 이걸 어떻게 계정을 데이터베이스에 연동시키느냐와 배포환경에 적용시키느냐가 문제인듯 한데.. 페이지네이션 관련 이런 식으로 1~10까지 번호를 두고 다음 키를 눌렀을 시 11~20까지 나오게 페이지네이션 바를 만들고싶은데 어떻게 해야 하나 구상중.. 로보플로우 관련 도대체 무슨 오류인지도 모르겠다.. 프로젝트 만들기 - just get me started 로 프로젝트 생성시에 라벨링 페이지에서 Annotation Editer가 먹통이 되서 아무것도 못하는 상태가 되버림.. 구글링을 쳐봐..

20221202 TIL

오늘의 한 일 최종 프로젝트 - 머신러닝 모델 백엔드 완성 피부 병변 탐지 머신러닝 모델 추가 inference 앱을 새로 만들어서 진행. inference/models.py from django.db import models from django_base64field.fields import Base64Field class Inference(models.Model): # 추론 모델 (base64 인코딩) output_img = Base64Field(max_length=900000, blank=True, null=True) 함수를 돌려서 최종적으로 나오는 이미지는 base64 포맷으로 인코딩을 거쳐 나오도록 만들었다. 펫딕셔너리 프로젝트때도 그랬는데 글자수 압박이 심하네.. 시리얼라이저는 class Me..