A ship in harbor is safe, but that is not what ships are built for.

개발일지/AI 캠프 103

내일배움캠프 AI - 85일차 TIL, 2022.12.29

스파르타 코딩클럽 내일배움캠프 AI 웹개발자양성과정 3회차 2022.12.29. 85일차 - TIL 축제어때 🌈 https://www.introvertcamp.shop/ back repo 👉 https://github.com/Naerumii/BestChoice front repo 👉 https://github.com/Naerumii/BestChoice_front ⭐ 프로젝트 목표 전국 축제 추천 및 커뮤니티 서비스 ⭐ 역할 추천서비스 : 이승연, 이효정 프론트엔드 : 정태희 백엔드 회원기능 : 정유준 마이페이지 : 이승연,정유준 축제게시글 : 이승연, 이효정 축제게시글 북마크 : 이승연 축제 모집게시글 : 정태희, 이승연, 이효정, 송창주 축제 모집게시글 댓글 : 정태희 축제 모집게시글 신청기능 : 이승..

내일배움캠프 AI - 84일차 TIL, 2022.12.28

스파르타 코딩클럽 내일배움캠프 AI 웹개발자양성과정 3회차 2022.12.28. 84일차 - TIL 최종발표 전 발표자료 작성과 시연영상 촬영, 깃허브 정리 및 README.md 작성을 했다. 계획했던 테스트코드 작성은 시간이 애매해서 수료 후에 팀원들과 취업준비를 하면서 짜보기로 했다. 오늘 공부한 것 python에서 DB 행 삭제 최종발표 전 서비스 점검을 하다 한개의 축제게시글이 3개씩 나오는것을 발견했다. 도커를 이용해서 백엔드 서버를 구동하는 과정에서 festival_article 모델에 축제 정보를 저장시켜주는 festival_loader.py이 중복으로 실행되어 같은 축제가 3개씩 저장된것.. 방법을 고민해봤는데 우리가 필요한 축제는 828개인데 이후 829번부터는 중복된 행이기 때문에 이것..

내일배움캠프 AI - 83일차 TIL, 2022.12.27

스파르타 코딩클럽 내일배움캠프 AI 웹개발자양성과정 3회차 2022.12.27. 83일차 - TIL 1. 테스트 코드 작성하기 지금까지 API 테스트는 Postman을 통해 진행했는데 물론 Postman도 좋은 툴이지만 하나하나 send 버튼을 누르며 테스트를 해야하는 불편함이 있다.(실제로 매번 로그인 후 access 토큰 변경 후 헤더에 붙여서 보내고 이런 작업들이 상당히 번거로웠다.) 하지만 테스트 코드를 작성하면 한줄의 명령으로 모든 테스트 케이스를 한번에 처리할 수 있다는 장점이 있다. 개발에서 테스트의 종류는 크게 3가지로 분류한다. 1) Unit test : 독립적인 class와 function 단위의 테스트 2) Regression test : 발생했던 버그에 대한 수정 테스트 3) Int..

내일배움캠프 AI - 82일차 TIL, 2022.12.26

스파르타 코딩클럽 내일배움캠프 AI 웹개발자양성과정 3회차 2022.12.26. 82일차 - TIL 1. 발표자료 정리 아키텍쳐 아키텍쳐 그리기 전 텍스트로 흐름을 정리해보았다. 장고 서버는 아래와 같은 순서로 동작한다. postgreSQL(DB) - django(프레임워크) - gunicorn(컨테이너) - nginx - ec2 - load balancer - route53 - 클라이언트 프론트엔드는 상대적으로 단순한 구조로 되어있다. S3 - cloudfront - route53 - 클라이언트 이를 토대로 아키텍쳐 초안을 작성해보았다. 조금 추가하고 싶은 내용들이 있지만 흐름을 알아볼 수 있었고 팀원들과 아키텍쳐를 보면서 배포 과정을 한번 더 이해하고 넘어갈 수 있었다. 모집 게시글 삭제 시 마이 페..

내일배움캠프 AI - 17주차 WIL

기간 : 2022.12.19 ~ 2022.12.23(5일간 진행) 지난주에 작성한 WIL을 보면서 이번주를 회상하는데 신기하게도 개선했으면 싶은 기능들을 모두 개선해서 매우 뿌듯했다. 사용자들의 피드백도 잘 받았고, 그 중 개선할 사항들도 금요일에 빠르게 개선하면서 점점 기능성이 좋아지고 있다. 이제 정말 다음주면 내일배움캠프도 끝난다. 처음에는 막막하고 성공적인 포트폴리오를 만들어야 한다는 압박도 심해서 굉장히 불안했는데 다행히도 결과가 아주 만족스럽게 나와서 내심 기뻤다. 다음주에 있을 발표를 아주아주 잘 준비해둘 것!! 시간이 될지는 모르겠지만(발표도 아주 열심히 준비해야 하기 때문에...) 다음주에 하고자 하는 바를 정리한다면, 첫번째, Github와 TIL 잘 정리하기 -> 그동안 미루었던 것,..

내일배움캠프 AI - 81일차 TIL, 2022.12.23

스파르타 코딩클럽 내일배움캠프 AI 웹개발자양성과정 3회차 2022.12.23. 81일차 - TIL 1. 프로젝트 기능 개선 1) 모집게시글 리스트에서 축제명 항목 크기 조절해 넘치지 않게 하기 피드백으로 지적받은 문제 중 하나가 바로 모집게시글 리스트에서 축제명이 일정 길이보다 긴 경우, 줄바꿈이 일어나면서 게시글 형식이 깨진다는 것이다. 이것은 프론트의 문제이지만 글자수를 제한하면 될 것이라고 생각해 바로 수정했다 전체적인 style을 다 변경할까 하다가 길이 제한이 필요한 것이 축제 제목 뿐이라 그냥 해당 태그에 style을 적용해주기로 했다.(style로 뺄까 하다가 일단 수정되는지만 확인하기 위해 그냥 태그에 style 속성을 추가했다.) 찾아보니 css 말줄임 속성(text-overflow:e..

내일배움캠프 AI - 80일차 TIL, 2022.12.22

스파르타 코딩클럽 내일배움캠프 AI 웹개발자양성과정 3회차 2022.12.22. 80일차 - TIL 클라우드프론트 무효화 프론트엔드 배포 후 수정이 필요한 경우 S3에 업로드 되어있는 파일을 삭제하고 다시 업로드를 해주어야하는데 업로드 하고 20분정도 시간이 지나도 바로 반영이 되지 않았다. 그냥 기약없이 기다려야하나 했는데 다른 팀의 보미님이 클라우드프론트 무효화 기능을 알려주셔서 잘 해결되었다. 먼저 클라우드프론트에 S3가 연동되어있는 도메인에 접속한다. 무효화 탭에서 무효화 생성 버튼을 클릭한다. 객체 경로 추가 부분에 S3에 재업로드 한 파일을 적어주는데 파일 경로 + 파일명을 입력한다. ex) static 폴더 - js 폴더 - main.js인 경우 static/js/main.js 이때 모든 파..

내일배움캠프 AI - 79일차 TIL, 2022.12.21

스파르타 코딩클럽 내일배움캠프 AI 웹개발자양성과정 3회차 2022.12.21. 79일차 - TIL 1. 프로팔 수정 기능 이전 프로젝트에서 완성하지 못한 프로필 수정 기능을 구현하려 한다. 그때는 백엔드만 성공하고 프론트는 시간이 없어서 완성하지 못했는데 이번에는 시간이 되서 구현하려 한다. 나는 다른 작업을 하고 있었기 때문에 다른 팀원분이 백엔드를 먼저 구현하고, 프론트엔드 연동을 도와 같이 하기로 했다. class ProfileView(APIView): ... #프로필 정보 수정하기 def patch(self, request): user = get_object_or_404(User, id=request.user.id) serializer = UserEditSerializer(user, data=r..

내일배움캠프 AI - 78일차 TIL, 2022.12.20

스파르타 코딩클럽 내일배움캠프 AI 웹개발자양성과정 3회차 2022.12.20. 78일차 - TIL 1. 배포하기 솔직히 나는 아직도 배포 단계가 잘 이해가 가지 않는다. 그냥 이렇게 하는거다... 같은 느낌에 만약 오류를 만나도 검색해 해결할 자신이 없는...? 다행히도 배포는 다른 팀원분이 진행해주셔서 수월(?)하게 진행할 수 있었다. 가장 큰 문제였던 aws 크레딧을 팀원 전원이 2회에 걸쳐 거절당했기 때문에 걱정이 아주아주 컸는데 다행히도 우리가 딥러닝 모델을 사용하지 않고, 크롤링도 한번만 진행하고 마쳤기 때문에 필요 용량이 크지 않아 진행할 수 있었다.(이거 아니었으면 정말 못했다....;;;) 서버 도메인 연동 1. 도메인 nameserver 설정하기 aws의 route53서비스에 접속 후 ..

내일배움캠프 AI - 77일차 TIL, 2022.12.19

스파르타 코딩클럽 내일배움캠프 AI 웹개발자양성과정 3회차 2022.12.19. 77일차 - TIL 1. 모집게시글 상태 변화 우리 프로젝트의 주제가 축제에 동행할 인원을 모집하는 것인데 아직 모집상태를 마감으로 변경하는 어떠한 동작도 존재하지 않는다. 그래서 각자 추가할 기능을 개발하고자 할 때 나는 수락한 신청 내역을 카운트해 모집게시글의 상태를 마감으로 변경하는 기능을 만들기로 했다. 일단 개발을 위한 사고회로는 다음과 같았다. 1) 모집마감인 게시글은 버튼을 활성화시키지 않는다. 2) 신청을 수락으로 누른 순간 현재 인원을 1증가시킨다. 이 현재 인원과 모집정원을 비교해 모집상태를 진행중, 마감으로 설정한다. 3) 그러면 해당 모델에 현재 인원을 저장할 integerfield가 필요하겠네... 4..