목록분류 전체보기 (76)
슈코딩
이번 애니메이션을 주제로한 추천시스템 프로젝트에서 DB에있는 정보들을 불러오는 view 그리고 컨텐츠기반 추천모델, 유저기반 모델 등 한번에 내것으로 만들기가 어려웠던 부분들이 있었다. 그래서 오늘은 각 APP 별로 코드를 짜는데 잘 이해가 안갔던 부분을 중점으로 코드를 정리를 해보려고 한다. 1. user 앱 views.py 장르 선택 페이지 필요한 기능 아이콘 선택시 선택이 된걸 확인 할 수 있게 색상 변경 ( 핑크색, 하트 ) 아이콘 선택시 선택한 정보가 DB에 저장 add() 중복 선택시 저장되었던 정보가 DB에서 삭제 exists(), remove() 선택은 3가지만 할 수 있게 제한 (1,2 or 4도 안된다. only 3) count() 3개 미만 선택시에 선택완료 버튼 비활성화 (숨김) v..
#문제 추천시스템 프로젝트를 진행하던 중 크롤링을 통해 데이터를 수집해서 csv 파일로 만들었었다. 이제 데이터는 수집을 하였는데, 정작 이것을 DB에 넣어야하는데 그 방법을 몰라서 당황을 했다. 1. csv to json 우선은 장고의 loaddata라는것을 활용해서 데이터를 넣기위해 csv파일을 json파일로 변형을 시켰다. https://csvjson.com/csv2json CSV to JSON - CSVJSON Embed all the functionality of csvjson in any web application with Flatfile. Auto-match columns, validate data fields, and provide an intuitive CSV import experie..
과제 1. args, kwargs를 사용하는 예제 코드 짜보기 2. mutable과 immutable은 어떤 특성이 있고, 어떤 자료형이 어디에 해당하는지 서술하기 3. DB Field에서 사용되는 Key 종류와 특징 서술하기 4. django에서 queryset과 object는 어떻게 다른지 서술하기 #1 args, kwargs 를 사용한 예제 def average_score(a, b, *args, **kwargs): print(f"평균점수는 {(a+b+args[0]+kwargs['d'])/4} 점 입니다.") return average_score(80, 94, 68, d=90) #2 mutable , imutable 의 특성과 어떤 자료형이 어느것에 해당하는지 서술 Mutable : 변할 수 있는 값..
프로젝트명: 10Taku 프로젝트 설명: 애니메이션을 좋아하는 사람 혹은 처음 입문한 사람들을 위한 애니메이션 추천 사이트 프로젝트 컨셉: 2D의 매력에 빠져들게 하는 길잡이 프로젝트 기간: 2022.06.02 ~ 2022.06.13 KPT 회고 Keep 🙂 구현 난이도가 높은 기능(장르 선택 페이지, 페이지 별 복합 출력 ) 은 화면 공유를 통해서 같이 개발을 진행해서 비교적 빠른 속도로 기능 구현이 가능했다. Notion에서 체크박스와 텍스트로 일정과 기능을 관리함으로써 프로젝트가 척척 진행됐다. 프로젝트의 전체적인 구조를 이해하기 위해 다른 팀원들의 기능도 같이 도전해보았던 점 Sourcetree 및 Github에 관해 잘 모르는 부분들을 서로 물어봐 가면서 해결했다. 좋아하는 주제"애니메이션" 으..
AWS 페이지 인스턴스 시작 1. 상단 콘솔에 EC2 입력 후 EC2 페이지에 접속 2. 인스턴스 선택 3. 인스턴스 시작 후 운영체제 Ubuntu LTS 버전 및 스펙 t2.micro (프리티어 무료버전) 선택 4. 검토 단계 보안그룹 편집( 인바운드 규칙 수정 ) 및 시작 5. 새로운 키페어 생성 6. 인스턴스 확인 및 연결 인스턴스 연결은 블로그 참조 https://kyumin1020.tistory.com/44?category=1030319 [AWS] Windows cmd, powershell로 인스턴스 연결하기 이번에 장고로 만든 추천시스템 프로젝트를 배포하면서 웹에서 CLI 환경으로 접속해서 배포를 했었는데, 웹에서 하면 불편한점이 여러가지 있었다. 일단 nginx의 default 파일을 수정을..
이번에 장고로 만든 추천시스템 프로젝트를 배포하면서 웹에서 CLI 환경으로 접속해서 배포를 했었는데, 웹에서 하면 불편한점이 여러가지 있었다. 일단 nginx의 default 파일을 수정을 하는데, 방향키로 이동만 했을뿐인데 글씨가 바뀌는 현상도 있었고 서버를 실행해놓고 한동안 그 페이지에서 작업이 없으면 작동을 안해서 다시 실행해야 되는 등 안좋은 점을 발견 할 수 있었다. 그래서 cmd나 shell 로 접속을 하는 방법을 유튜브 영상 도움을 받아서 찾았다. 먼저 AWS 사이트에서 인스턴스를 생성할때 생성하는 키파일이 필요하다. .pem 으로 되어있는 PEM 파일을 C드라이브에 AWS-KEY라는 파일을 만들어 저장하고 AWS 인스턴스 페이지에서 연결할 인스턴스를 선택하고 연결을 클릭한다. 연결을 누르면..
1. Git , Github, Sourcetree Git이란? 프로젝트를 진행함에 있어서 중간중간 commit을하고 무엇이 수정됐는지 알 수 있는 버전 관리 도구이다. commit할때는 commit 메시지를 달아서 무엇을 수정했는지 history만 봐도 한눈에 알수있게 한다. 효율적인 협업의 방법으로 Git을 많이 사용한다. Git의 특징 Branch와 Merge main 브랜치에서 가지(Branch)를 생성해서 독립성을 유지한 채로 개발을 진행 할 수 있다. 다양한 코드를 개발 또는 테스트 해볼 수 있는 환경을 제공해준다. 이후 병합(Merge)를 통해 메인코드에 반영을하거나 삭제할 수 있다. 분산 작업을 효율적으로 할 수 있다. Branch에는 명명규칙이나 전략이 있다. https://www.inbo..
1. MySQL 이번 프로젝트 때는 MySQL을 사용했다. 지금까지 사용했던 DB는 Flask를 배웠을때 사용했던 MongoDB랑 Django 강의를 들으며 사용했던 SQLite 이렇게 두가지인데, 이번 프로젝트때는 MySQL을 사용해보기로 했다. 사용하기에 앞서 MySQL에 대해서 기초지식은 알고가기위해 왜 사용해야하는지를 조금 파악하기 위해서 관련자료들을 찾아서 훑어봤다. MySQL은 가장 널리 사용되고 있는 관계형 데이터베이스 관리 시스템 (RDBMS: Relational DataBase Management System) MySQL은 오픈 소스이며, 다중 사용자와 다중 스레드를 지원 또한, C언어, C++, JAVA, PHP 등 여러 프로그래밍 언어를 위한 다양한 API를 제공 MySQL은 유닉스,..
오늘 쓰는 글은 온전히 이번 프로젝트때 사용한 장고에 익숙해지기위해 프로젝트 처음부터 코드를 새로운 파일에 다시 써보며 순서를 복기한 글이다. 1. Django 프로젝트 생성 파일지정 2. django-admin startapp 앱이름 APP 생성 3. settings.py 에 APP 등록 4. 최상위 디렉토리 (manage.py가 있는 경로) 에 my_settings.py 생성후 SECRET_KEY , DATABASES 분리 my_settings.py from pathlib import Path BASE_DIR = Path(__file__).resolve().parent.parent SECRET = { 'secret': '', #시크릿키 } DATABASES = { 'default': { 'ENGINE..
1. 프로젝트 개요 우리팀은 이번 추천시스템 프로젝트 때 애니메이션을 추천해주는 웹페이지를 만들기로 했다. 이름은 10조라서 10Taku로 지었고 회원가입, 로그인, 장르선택, 메인페이지, 상세페이지, 북마크 페이지, 추천페이지, 검색결과 페이지 로 구성될 예정이다. 6/2~ 6/13일까지 진행되는 12일간의 프로젝트이다. 2. 역할 분담 3. Mock-up https://docs.google.com/presentation/d/1j6QE8TeJI6S9dn34Lf-_TeOoBDofJvkdfaHV4W7TQeo/edit?usp=sharing 십지않조 애니메이션 추천 시스템 장고 프로젝트 목업 회원가입 페이지 PW 회원가입 ID 로고 PW 확인 이름 로그인 docs.google.com 4. API 명세서 htt..