안녕하세요. 강좌를 바탕으로 개인적으로 토이 프로젝트를 만들어보려고 하고있는데요. 지도에 마커로 위치를 표시할수 있고, 마커 하나당 게시글 하나를 포함합니다. 게시글에는 제목, 설명, 사진이 들어갑니다. 프론트에서 지도화면에서는 마커들을 표시하고 마커 하나를 눌렀을때 해당하는 게시글과 사진을 보여주고 싶습니다. 마커 테이블과 게시글 테이블을 만들어서 one to one 관계가 좋을까요, 아니면 이런경우 하나의 테이블에 마커와 게시글 정보를 넣으면 될까요? chatGPT를 사용해봤는데 답변이 두가지입니다. Marker와 Post 테이블 간에 일대일 (one-to-one) 관계를 설정하는것이 좋다. Marker와 Post 테이블을 조인하여 필요한 정보를 가져올 수 있다. 하나의 테이블에 마커와 게시글 정보를 함께 저장하고, 해당 정보를 조회할 때는 필요한 컬럼들만 선택하여 조회하는 것이 좋다. 마커 정보와 게시글 정보가 함께 저장되므로, 마커를 클릭하여 게시글 정보를 조회할 때 JOIN 연산이 필요하지 않아 성능상 이점이 있다. 테이블 구조를 어떻게 짜는것이 맞는것인가요? 그리고 테이블 구조 짜는것이 어려운데 이런것을 판단하기 위해 어떻게 학습하면 좋을까요?
안녕하세요! 보여주신 erd에서 궁금증이 생겨서 질문 드립니다. dms의 ReciverId과 mentions의 Receiverid 만 Non-identifying relation으로 맺어져 있고 나머지 관계들은 모두 Identifying Relation으로 맺어져 있는 이유가 뭘까요? Non-Identifying Relation과 Identifying Relation의 차이는 Non의 경우는 부모와 자식의 관계를 맺을때 자식이 부모 없이도 독립적으로 존재 가능한 것이고, Identifying-Relation은 자식이 부모 없이는 존재가 불가능한 차이로 알고 있습니다. DM과 Mention의 Receiver가 존재하지 않는다면, DM과 Mention의 정보가 불완전해질 것 같은데, 왜 non-identifying 일까요? typeorm entity 코드를 봐도, DM과 User entity의 Sender와 Receiver의 코드가 완전 똑같은데, 왜 ERD에서는 Receiver는 non-identifying 이고 Sender는 identifying인지 모르겠습니다.
@Get(':id') getOneCat(@Param('id', PositiveIntPipe) id: number) { console.log(id, typeof id); return 'one cat'; } 이전에 작성되었던 아이디로 검색 메서드가 있었는데요, 이번 강의에서 @Get('all') 을 추가해서 포스트맨으로 테스트하는데 위에 getOneCat 으로 넘어가는데 왜 이런건지 알 수 있을까요? @ApiOperation({ summary: '현재 고양이 가져오가' }) @UseGuards(JwtAuthGuard) @Get() getCurrentCat(@CurrentUser() cat) { return cat.readOnlyData; } 만약 이게 더 위에 있다면, 여기서 걸린다면 이해 하겠는데 그렇지도 않고 @Get('all') 일때만 걸리는 이유가 뭘까요..?
안녕하세요 정말 열심히 듣고 있었지만 오류가 발생하자 아무리 찾아도 나오지 않아 답답해서 문의 드립니다. 강의: 크롤링 2 - puppeteer docker-compose up 으로 실행 하였고 crawler 를 node index.js 실행 하자 저런 에러들이 발생하였습니다.... 해결 방법이 있을까요??
안녕하세요. '이미지 업로드 API' 수업 따라가다 Postman으로 'uploadFile' 호출시 'Cross-Site Request Forgery(CSRF)' 오류 발생에 대해서 확인 후 원인에 대해서 시원한 답변 부탁 드릴께요. 위와 같이 CSRF 오류가 발생 합니다. 구글후 headers에 하기 값을 추가하니 문제 없네요. 원인에 대해서 쉽게 설명좀 부탁 드립니다. :)
배포 사전 학습과제 진행중에, gcloud로 docker-credential-gcr 설치 gcloud components install docker-credential-gcr docker-credential-gcr 이용 docker-credential-gcr configure-docker 를 입력했을 때 제목과 같이 bad CPU 에러가 발생합니다. 이유를 알고싶습니다. (경로 확인 which docker-credential-gcr 했을 때 /Users/paradise/Desktop/google-cloud-sdk/bin/docker-credential-gcr 라고 확인됩니다.) (파일 executable 확인 file docker-credential-gcr 했을 때 docker-credential-gcr: Mach-O 64-bit executable arm64 라고 확인됩니다.) ingress 설정중에 발생한 문제가 있습니다. ingress 를 만들기 전에 이미지를 새로 만들고 gcloud shell에서 set image를 통해 재배포하는 단계까지는 모두 성공적으로 작동합니다. 다만 ingress를 만들면 404, cannot get error 가 발생합니다. All backend services are in UNHEALTHY state 라고 나옵니다. 이유가 궁금합니다.
req.user 에서, request 가 user 객체 정보를 가지고 있는 건가요..? -- 확인해 보니, passport 에서 User 인터페이스를 가지고 있네요! 그런데, 비어있는데 어떻게 속성을 가지고 있는 걸까요? JwtStrategy/validate 의 리턴값을 가지게 되는 건가요? 3월 14일 질문에 대한 답변도 좀 부탁 드립니다..
user와 auth가 서로를 import하고 있어서 forwardRef로 순환 참조를 막아줬는데 auth에선 userRepository를 사용하고 있고 user에선 authService.jwtLogin()을 사용하는데 순환 참조가 발생하는 건가요? 안 막아줘도 되는건가요?
클래스 - readonly 와 생성자 이 수업에서 타임라인 28초쯤부터 ~ 1분 13초쯤까지 어떨 때는 정보를 보낼 때 class를 쓰고 어떨 때는 json과 object를 쓴다고 예를 들어주시는 내용 같은데.. 말이 좀 엉켜서 제가 이해가 잘 안되네요 😥 다시 한번 설명 좀 부탁드려도 될까요?
현재 공식 레퍼런스를 보며 prisma, next를 사용해서 게시판을 만드는 프로젝트 작업을 성공적으로 끝냈지만 한가지 문제가 있었습니다. prisma의 now()가 timezone UTC를 베이스로 작동하고 있는데 이걸 설정하는 방법을 prisma에서 공식적으로 지원하지 않는다고 검색을 통해 알게되었습니다. 아직 강의 내용을 수강하지는 않았기에 강의내용에서 timezone 관련 이슈를 다루는지는 모르겠지만 그 파트를 직접 찾기에는 오래 걸리는터라.... 먼저 질문부터 남겨봅니다.
수업에서는 기존 DB라 typeorm-model-generator를 사용했는데요, 저의 질문의 요점은 ORM으로 DML 위주의 사용이 보편적인가 하는 것입니다. 제가 python하다가 node.js로 넘어와서, python 예를 들어 죄송합니다만, https://velog.io/@youngkiu/SQLAlchemy-with-DDL python에서는 model도 create table sql로 만들지 않고, model을 생성하고, ORM에서 DDL 처리도 같이 해주었습니다. 스프링에서도 DDL은 ORM을 사용하지 않고, DB에서 직접 처리한다는 이야기를 듣기도 하여, 업계에서 ORM의 일반적인 사용방법이 궁금하여 질문드립니다. 늘 많이 배우고 있습니다. 감사합니다. 타입스크립트 책 얼릉 출간해 주세요. 바로 구매하겠습니다.