본문 바로가기

분류 전체보기307

Web 개발 :: AWS 인스턴스에 도커(Docker) 셋팅 _TIL#48 ■ JITHub 개발일지 48일차 □ TIL(Today I Learned) :: AWS 인스턴스에 Docker 셋팅 - EC2에서 인스턴스를 생성한 후 터미널과 연결할 때에는 아래와 같은 명령어를 사용한다. 여기서 ubuntu는 EC2에서 인스턴스를 생성하면 기본적으로 생성되는 계정이다. pem파일 경로는 터미널에 저장된 pem 파일을 drag&drop하면 자동으로 입력된다. - 첫 연결시에는 아래와 같이 yes/no를 묻는 창이 나온다. yes를 해서 넘어가면 된다. (이후 연결시에는 나오지 않는다.) ssh -i ubuntu@ - 서버에 접속하면 apt 업데이트를 먼저 해준다. sudo apt update - 아래 명령어로 도커를 설치할 수 있다. sudo apt install docker.io -y.. 2022. 11. 11.
Web 개발 :: Django DRF Test Code 활용하기 Django DRF Test Code 활용하기 01. 테스트 코드 - Django에서 startapp을 통해 만들어진 앱에는 test.py라는 파일이 자동으로 생성된다. 이 파일에 임의의 테스트코드를 적고 터미널에서 아래와 같이 입력하면 테스트 결과를 출력해준다. python manage.py test - 임의로 아래와 같이 test.py에 작성하고 위의 명령어를 통해 test하면 결과를 출력해주는 것을 확인할 수 있다. # test.py from django.test import TestCase # Create your tests here. class TestView(TestCase): def test_two_is_three(self): self.assertEqual(2,3) def test_two_i.. 2022. 11. 9.
Web 개발 :: 프로젝트 완료 및 KPT 회고록 ■ JITHub 개발일지 47일차 □ TIL(Today I Learned) :: 추천 서비스 프로젝트 완료, KPT 회고 - 팀 프로젝트를 잘 마쳤다. 팀 프로젝트를 마무리하면서 팀원들과 아래와 같이 회고록을 작성하여 공유해보았다. ※ 손상훈님 😀 - KEEP : 하루에 2번 회의시간 정한 것. : Github를 이용해서 협업한 점 - PROBLEM : 회의할 때 서로 말이 많이 없던 점( 말이 다들 적어서 화났거나 걱정이 많아보임.) : 기능별로 branch를 잘 나눠서 협업하지 못한 점 : 날,시간대비 프로젝트 진행 높낮이 조절이 부족한 점 - TRY : 회의할 때 왠만하면 마이크를 켜기. : 각자 파트별로 branch를 나누고 PR할 때 전부 댓글을 달고 확인하면 merge를 하기. : 프로젝트의 .. 2022. 11. 8.
Web 개발 :: Django rest framework, 추천 시스템 _TIL#46 ■ JITHub 개발일지 46일차 □ TIL(Today I Learned) :: 파이썬 Django Rest Framework, Front-end, 추천서비스 기능 구현 - html 프론트엔드 작업을 할 때 전날과 같이 여전히 버튼을 눌렀을 때 로드하는 데 문제가 있었다. 버튼은 a태그이거나, button으로 구성했었다. 또, 링크는 onclick을 통해 함수를 호출하거나, href를 통해 템플릿을 불러왔다. 버튼01 버튼02 - 실행했을 때 콘솔창을 보면, 새로 페이지를 로드할 때 전혀 변화가 없었고, F5키를 누르거나, 주소창에 url을 다시 입력 후 로드할 때에 동작하게 되었다. 아마도 자바스크립트 문법 또는 템플릿과의 충돌일 가능성이 높은데 정확하게 어떤 부분인지는 확인하지 못했다. 하지만 아래 .. 2022. 11. 8.
파이썬/머신러닝 웹 프로그래밍 :: 11월 첫째주 WIL #10 ■ 개발일지 WIL #10 1. FACTS - Django Rest Framework(DRF) 프로젝트 진행 : Django Rest Framework 강의를 마무리하고 추천서비스 프로젝트를 진행한다. : 추천 서비스 주제는 '사용자가 원하는 노래 리스트를 추천하는 서비스' 이다. : 추천받은 노래는 플레이리스트로 관리할 수 있다. : 이번에는 프론트엔드와 백엔드를 구분하여 json 파일을 serializer를 통해 변형하여 자료를 전달하는 방식으로 진행될 예정이다. - 추천 시스템 : 추천 시스템을 활용한다. 유저기반 협업 필터링/아이템 기반 협업필터링으로 구분하여 사용한다. : 판다스, 넘파이를 통해 추천시스템을 구성할 때 데이터프레임을 활용하고, 사이킷런을 불러와서 코사인 유사도를 사용하였다. 노래.. 2022. 11. 7.
Web 개발 :: Django rest framework, 추천 시스템 _TIL#45 ■ JITHub 개발일지 45일차 □ TIL(Today I Learned) :: django restframework - 추천 리스트 가져오기 추천리스트를 가져오기 위해 ajax 문법을 사용하였다. 이는 for문을 통해 html 템플릿을 반복하기 위해서였다. 잊었던 부분인데 다시 사용해보니 새록새록했다. function songrecommend() { $('#songs-box2').empty() const song_id = 10 $.ajax({ type:"POST", url: "http://127.0.0.1:8000/songs/"+song_id+"/recommend/", data: {}, success: function (response) { let rows = response for (let i = 0.. 2022. 11. 7.
Web 개발 :: 파이썬 Django Rest Framework(14) _ 피드 DRF(Django Rest Framework)(14) _ 피드 01. 프로필 페이지 - 이제 유저가 팔로우하고 있는 사람들의 글들을 볼 수 있는 Feed 화면을 생성해본다. 먼저 urls.py에 사용할 url과 view를 연결해준다. # articles/urls.py urlpatterns = [ ... path('feed/', views.FeedView.as_view(), name='feed_view'), ... ] - Feed는 로그인 되어있을 때 보여주기 위해 permission_classes를 추가해주었다. - 그리고 for문을 이용해서 사용자가 following하고 있는 사람들을 차례로 돌 것이다. 이 때 사용되는 것이 Q objects인데 참고 링크를 확인해본다. (※ 참고 링크) Q obje.. 2022. 11. 7.
Web 개발 :: 파이썬 Django Rest Framework(13) _ 프로필 페이지 DRF(Django Rest Framework)(13) _ 프로필 페이지 01. 프로필 페이지 - 사용자 프로필 페이지를 만들기 위해 정보를 가져오는 기능을 구현해보려고 한다. - 아래와 같이 view에서 사용할 serializer를 먼저 정의해준다. # users/serializers.py class UserProfileSerializer(serializers.ModelSerializer): class Meta: model = User fields = '__all__' - 정의한 UserProfileSerializer를 사용하여 아래와 같이 ProfileView를 만들어주고 포스트맨으로 확인해본다. # users/views.py class ProfileView(APIView): def get(self,.. 2022. 11. 6.
Web 개발 :: 파이썬 Django Rest Framework(12) _ Serializer 보완(Likes count, Comments count) DRF(Django Rest Framework)(12) _ Serializer 보완 01. 게시글 상세페이지 수정하기 - 현재 게시글 상세페이지를 GET 요청하면 아래와 같이 볼 수 있다. 추가한 코멘트가 현재 보이지 않고, 좋아요는 사용자 id로 나오고 있다. 코멘트를 추가하고 사용자 이메일로 나타나게 하려한다. - 아래 models.py를 살펴보면 Article에는 Comment에 대한 정보가 없지만, Comment에는 Article을 ForeignKey로 가져오고 있기 때문에 comment_set이라는 related_name으로 사용할 수 있다. 이를 활용해서 serializer를 수정한다. # articles/models.py class Article(models.Model): user = mod.. 2022. 11. 5.
Web 개발 :: 파이썬 Django Rest Framework(11) _ 좋아요, 팔로우 기능 DRF(Django Rest Framework)(11) _ 좋아요(Like), 팔로우(Follow) 기능 01. 좋아요(Like) 모델 생성하기 - 좋아요 기능은 ManyToManyField로 생성한다. 기존에 있던 Article 모델에 추가해주도록 한다. # articles/models.py class Article(models.Model): ... likes = models.ManyToManyField(User, related_name='like_articles') - 여기서는 related_name을 지정해주어야 하는데, 이유는 related_name을 지정하지 않으면 기본적으로 지정되는 이름인 article_set이 할당되어야 할 필드가 두 개가 되기 때문이다.(기존에 user라는 ForeignK.. 2022. 11. 4.
반응형