일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Jest
- 호이스팅
- 트랜잭션
- manytomanyfield
- TypeError: this.boardRepository.createBoard is not a function
- 프로미스
- OSI7계층
- rebase
- 스코프
- CORS
- 장고초기세팅
- javascript
- 실행 컨텍스트
- on_delete
- nodeJS
- JWT
- 노드
- docker
- Django
- status code
- crud2
- django westagram
- 자바스크립트
- westagram
- typescript
- pm2
- bcrypt
- node
- wecode
- async/await
- Today
- Total
목록프로젝트 (92)
될때까지
1. ORM 연결 mysql2로 변경하기 ORM을 사용하지 말고 raw query로 작성해야했는데 DB와 연결할때는 typeorm을 사용했다. ORM 자체를 사용하지 않고 DB와 연결할 수 있는 방법이 있는데 그땐 왜그랬을까..!!! 코드를 수정해보자. 먼저 설치된 typeorm을 삭제한다. npm uninstall typeorm 그리고 mysql2를 설치한다. npm install mysql2 DB연결 정보들은 .env파일에 저장하여 외부로 노출되지 않도록 숨겨줬다. // .env DATABASE_URL = mysql://유저이름:비밀번호@호스트주소:포트번호/데이터베이스이름 MYSQL_CONNECTION = mysql MYSQL_HOST = 127.0.0.1 MYSQL_PORT = 3306 MYSQL_..
호스트가 집을 등록하려면 집 이미지도 첨부하게 된다. 첨부한 이미지 파일들은 어디에 저장해야할까? WnB 프로젝트에서는 AWS S3를 사용해서 저장했다. S3가 무엇이고 왜 사용하는지 간단하게 알아보자. S3란? Simple Storage Service의 약자로 인터넷용 스토리지 서비스를 말한다. 이미지 파일들을 저장할 수 있는 공간으로 버킷(bucket)이라는 최상위 디렉토리에 저장된다. S3의 버킷은 무한대의 객체(저장되는 데이터 단위를 일컫음)를 저장할 수 있기 때문에 확장 및 축소에 신경을 쓰지 않아도 되서 관리에 용이하다는 장점이 있다. 난 기존에 만들었던 버킷을 사용할것이기 때문에, 버킷 생성 관련 자료는 >>해당 유튜브 참고 클릭 views.py import boto3 class Regist..
# FLOW 호스트가 집을 등록하는 기능을 구현해보자. 이미지 파일 업로드는 일단 빼고 대략적인 flow를 그려보자. url : POST /hosts/rooms 집 등록 기능은 로그인한 유저 + 호스트 일때만 가능하다. header에 첨부된 토큰을 복호화하여 호스트 여부를 확인한다. 호스트가 아니라면, 403 에러를 반환한다. 집이름, 지역, 주소, 가격, 설명, 위도, 경도, 최대수용인원, 방, 화장실, 침대의 갯수, 카테고리, 룸타입, 기타시설의 정보를 body로 받는다. 외래키로 연결되는 카테고리, 룸타입, 기타시설 id는 존재유무를 확인한다. 집이름은 중복 불가능하다. 집을 등록한다. # 포스트맨에서 리스트로 데이터를 보내는 방법 포스트맨으로 여러개의 데이터를 리스트로 담아 요청하는 방법은 아래와..
# 일반 회원가입 1. 기존의 서비스는 카카오 소셜 로그인만 가능했다. DB의 users 테이블에서 kakao_id, kakao_profile_img 컬럼의 값을 NULL TRUE로 변경해줘야지 회원가입이 가능하다. # users > models.py from decimal import Decimal from django.db import models from core.models import TimeStampModel class User(TimeStampModel): ...생략... kakao_id = models.BigIntegerField(unique=True, null=True) kakao_profile_img = models.CharField(max_length = 500, null=True) ..
기존의 WnB는 미니콘다 가상환경을 사용했었다. 원티드 프리온보딩 코스를 참여하면서 poetry를 새롭게 배웠는데, npm과 비슷한 부분들이 많아서 더 편리했다. 해당 프로젝트로 poetry를 사용할 수 있게끔 세팅을 변경해야한다. 아래 명령어를 쉘에서 입력한다. poetry init 그럼 뭘 많이 물어보는데, 프로젝트에 맞게 적어주면 된다. 그다음 가상환경을 실행시킨다. poetry shell 프로젝트에 필요한 패키지를 설치한다(ex jwt, pymysql, boto3...) poetry add jwt poetry add Django==4.0.6 // 버전 지정도 가능 그다음 서버를 키면 잘 돌아가는 걸 확인할 수 있다. python manage.py runserver
WnB프로젝트는 끝났다. 하지만 추후 리팩토링이나 뭐 새로운 기술을 추가하면서 프로젝트를 업그레이드하고 싶었다. 하지만 해당 프로젝트는 현재 다른 레포지토리에 올라가있고 팀원들과 연결이 되어있다. 이미 프로젝트가 종료되었으니 내가 어떤 작업을 하든 팀 멤버들에게 영향을 주고싶지않았다. 그래서 구글링을 했고, 내 개인 레포지토리로 옮겨서 프로젝트를 이어갈 수 있는 방법을 정리해보도록 하자. 1. 클론받기 먼저 프로젝트를 다운받을 폴더로 이동한다. 그다음 clone할 레포지토리의 소스코드들을 가져온다. git clone 팀프로젝트레포지토리주소 2. 내 레포지토리 만들기 깃허브에 텅 비어있는 새 레포지토리를 만든다. 3. 둘이 연결하기 클론받은 프로젝트 폴더로 이동한다. cd 프로젝트폴더 연결된 레포지토리를 ..
이번주 화요일부터는 계속 이력서를 작성했다. 가자 취직!! 올해안에 부셔버리자!! 그래서 이제까지 진행했던 프로젝트의 코드들과 리드미를 살펴봤는데, 노드로 진행했던 프로젝트의 Swagger링크가 localhost로 작성된 걸 발견했다. 분명히 마무리 당시에 swagger링크 생성한다고 aws ec2도 생성했는데 왜..지?? pm2를 사용해 서버를 꺼도 돌아가게 작업했는데.. 가만 생각해보니까 ec2와 연결해주는 작업은 하나도 하지 않았다지 뭐야 ~.~ AWS에서 다운로드받았던 .pem 파일도 사용하지 않고 있었다ㅋㅋㅋ 😅 그럼 인스턴스에 접속해서 swagger 링크를 배포해보자! 1. pem파일 권한 변경 및 EC2 접속 .pem파일 있는 폴더로 이동한 뒤, ls명령어로 .pem파일이 있나 확인한다. 아..
# 초기 세팅 로컬에 다운받기 git clone받기 poetry install 데이터베이스 생성 .env파일 생성 poetry shell 실행 python manage.py runserver => 서버 켜지는지 확인하기 python manage.py migrate => migrations DB에 적용 # 예약 생성하기 예악자 이름, 연락처를 입력받고 우리 병원 첫 예약자라면 예약자 테이블에 생성하기 환자 이름, 환자 생년월일, 병원, 진료 타입, 날짜, 시간 body로 입력받기 중복 예약 여부 확인은 예약자, 환자이름, 환자 생년월일, 병원, 날짜, 시간으로 확인하기 예약 생성 후 예약코드와 예약자 이름 결과값으로 반환하기 # 어려웠던 부분 딱히 없었다..!! 2달만에 django를 다시 사용해봤는데 ..
# 새 과제 시작 정신없이 몰아치는 프리온보딩. 벌써 4번째 과제다. 이번 과제는 정해진 프레임워크나 언어가 없잖아? 그래서 우리팀은 오랜만에 Python, Django를 사용해서 진행하기로 결정했다!! 두달?.? 만에 다시 만난 파이썬 장고야 낯가리지 말고 다시 친하게 지내자 ^ㅠ^ 노드를 쓸때는 npm으로 패키지관리를 했는데 위코드에서는 가상환경 miniconda를 사용했었다. 벌써부터 번거롭네? 성가시네라고 팀원들과 이야기하던 도중 어떤분이 인턴쉽에서 사용했던 포이트리라는 걸 알려주셨고, 포이트리를 사용해서 패키지 관리를 해보자 입을 모았다. 그래서 포이트리가 뭔데부터 시작합니당 # Poetry Poetry란 Python에서 종속성 관리 및 패키킹을 위한 도구다. 이를 통해 라이브러리를 설치 및 업..
# 팔로우 엔티티 https://stackoverflow.com/questions/71164311/follow-unfollow-feature-nestjs Follow/Unfollow Feature NestJS I am trying to create a follow/unfollow system in my NestJS application. Currently I have a user table and joiner table follows. The follows table has the following structure follows followerId stackoverflow.com # find, findony https://www.kindacode.com/snippet/typeorm-get-raw-sql..