inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

join한 테이블 조회시 컬럼이 겹치는 문제

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

아래와 같은 코드에서 memberID를 조건으로 데이터를 조회하면 join된 campground와 member 각각에 member 컬럼이 다 있어 조건으로 넣어준 memberId를 어디서 찾아야 하는지 typeORM에서 인식하지 못하는 것 같습니다. 때문에 아래와 같은 에러가 나오는거 같습니다. 어떻게 해결해야 할까요? result = await this.dibsRepository.find({ where: { member: { memberId }, }, relations: ['campground', 'member'], }); QueryFailedError: Column 'memberId' in where clause is ambiguous

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
Haewoong Lee 댓글 1 좋아요 0 조회수 283

08-05 강의에서 DB 접근이 안되는 현상이 발생합니다.

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

위와 같은 연결 오류가 발생하고 이때 host는 ' localhost ' 로 입력을 한 상태입니다. app.module.ts 파일 내의 host를 127.0.0.1 로 변경하면 또 정상 작동 합니다. 인터넷을 보니까 socketPath: '/tmp/mysql.sock' 를 마지막에 넣어주면 또 정상 작동 하는 것 같습니다. 도서관과 같은 특수한 네트워크 환경에서 진행해서 그런걸까요? https://cloer.tistory.com/56 자료를 참고했습니다.

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
박상준 댓글 1 좋아요 0 조회수 420

DTO에 Entity 포함

해결됨

실전! Querydsl

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 안녕하세요. public class MemberTeamDto { private Member member; private Team team; @QueryProjection public MemberTeamDto(Member member, Team team) { this.member = member; this.team = team; } } 이런식으로 DTO에 엔티티를 직접 포함해도 되나요?? 실행은 잘되는거 같은데 이렇게 활용해도 되는지 궁금합니다

  • java
  • jpa
11 댓글 1 좋아요 0 조회수 1567

find가 빈 값을 반환하는 문제

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

안녕하세요~ 프로젝트 만들다보니 질문거리가 많아지네요. @Query(() => [Dibs]) fetchDibs( @Args('findDibsInput') findDibsInput: FindDibsInput, ): Promise<Dibs[]> { return this.dibsService.find(findDibsInput); } async find(findDibsInput: FindDibsInput): Promise<Dibs[]> { const { campgroundId, memberId } = findDibsInput; const result = await this.dibsRepository.find({ where: { campground: { campgroundId }, member: { memberId }, }, }); return result; } 위 코드에 아래와 같은 graphQL 요청을 하면 아무런 값도 돌아오지 않습니다. query { fetchDibs( findDibsInput: { campgroundId: "845b4bac-e0d9-4d1e-a897-9859275e9948" memberId: "lhw3542" } ) { campground{ campgroundId campName } member { memberId } } } { "data": { "fetchDibs": [] } } 조건식 인식 자체가 제대로 되지 않고 있는거 같은데 또 오류는 안나오네요. 어떤 것이 문제일까요?

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
Haewoong Lee 댓글 1 좋아요 0 조회수 224

jwt활용한 로그아웃

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

혹시 로그아웃에 대한 구현은 어떤식으로 해야할까요? header에서 토큰을 제거하는 거 말고 어떤 방식으로 토큰을 무효화 할까요?

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
yskim 댓글 1 좋아요 0 조회수 1912

Task<WeatherForecast[]> 를 List<Task<WeatherForecast>> 이렇게 고친 후

미해결

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part6: 웹 서버

웹서버 Form,Validation 강의에서 using System.Collections.Generic; Task<WeatherForecast[]> 를 List<Task<WeatherForecast>> 이렇게 고친 후 System.Threading.Tasks.Task<System.Collections.Generic.List< BlazorStudy.Data .WeatherForecast> 형식을 System.Collections.Generic.List<System.Threading.Tasks.Task< BlazorStudy.Data .WeatherForecast>> 형식으로 변환할 수 없습니다. 라는 오류 메시지가 뜹니다. 어떻게 해야 될까요?

  • rest-api
  • blazor
  • web-api
  • asp.net-core
beginner 댓글 1 좋아요 0 조회수 417

복합키 설정 관련 질문

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

안녕하세요. 항상 친절하고 상세한 답변 감사합니다. 복합키 생성 관련 오류가 있어 질문드립니다. @Entity() @ObjectType() export class Dibs { @ManyToOne(() => Member) @PrimaryColumn() @JoinColumn({ name: 'memberId' }) @Field(() => Member) member: Member; @ManyToOne(() => Campground) @PrimaryColumn() @JoinColumn({ name: 'campgroundId' }) @Field(() => Campground) campground: Campground; @DeleteDateColumn() deletedAt: Date; } 위와 같이 member와 campground의 id를 복합키로하여 Dibs라는 테이블을 생성하려고 합니다. 그런데 아래와 같은 오류가 발생했습니다. [Nest] 21844 - 2023. 05. 24. 오전 9:36:44 ERROR [ExceptionHandler] Data type "Member" in "Dibs.member" is not supported by "mysql" database. DataTypeNotSupportedError: Data type "Member" in "Dibs.member" is not supported by "mysql" database. 그런데 해당 코드를 아래와 같이 고치면 또 정상작동하게 됩니다. @Entity() @ObjectType() export class Dibs { @ManyToOne(() => Member) @PrimaryColumn() @JoinColumn({ name: 'memberId' }) @Field(() => Member) memberId: Member; @ManyToOne(() => Campground) @PrimaryColumn() @JoinColumn({ name: 'campgroundId' }) @Field(() => Campground) campgroundId: Campground; @DeleteDateColumn() deletedAt: Date; } member -> memberId, campground -> campgroundId 라고 변수명만 바꿨을 뿐인데 정상작동하는 이유를 모르겠네요. member와 campground의 기본키가 각각 memberId와 campgroundId로 설정되어 있긴 합니다. 최종적으로 아래와 같이 구현했습니다. @Entity() @ObjectType() export class Dibs { @ManyToOne(() => Member) @PrimaryColumn() @JoinColumn({ name: 'memberId' }) @Field(() => String) memberId: string; @ManyToOne(() => Campground) @PrimaryColumn() @JoinColumn({ name: 'campgroundId' }) @Field(() => String) campgroundId: string; @DeleteDateColumn() deletedAt: Date; } 위 코드도 문제없이 잘 작동합니다. 그런데 애초에 복합키를 설정하는 것이 안 좋은 것일까요? 외래키 두개로 각 레코드들이 고유하게 구분될 수 있기 때문에 따로 기본키를 설정하지 않았는데 기본키를 설정하는게 더 좋은 방법일까요?

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
Haewoong Lee 댓글 1 좋아요 0 조회수 359

VScode에서 login_test파일을 열고 실행시킨 후 오류

미해결

[리뉴얼] 처음하는 파이썬 백엔드와 웹기술 입문 (파이썬 중급, flask[플라스크] 로 이해하는 백엔드 및 웹기술 기본) [풀스택 Part1-1]

실행을 시키면 터미널 창에 [ 'conda : 'conda' 용어가 cmblet,함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다. ] 라고 뜨는데, 저런 문구가 떠도 앞으로의 커리큘럼을 실행하는 데에 크게 상관이 없을까요?

  • python
  • rest-api
  • flask
ziu0224 댓글 1 좋아요 0 조회수 454

프론트에서 원하는 데이터를 찾을 때

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

section29까지 듣고 현재 제 프로젝트를 구축하고 있습니다. 그런데 궁금한 것이 이제까지 수업에서는 데이터를 찾을 때 고유 id를 가지고 findOne 메서드를 이용해서 데이터를 찾거나 find 메서드로 전체 데이터를 다 긁어오는 방식을 사용했습니다. 하지만 프론트에서는 특정 조건을 충족하는 데이터만 찾고 싶은 경우가 많을텐데요. 이를 위해서 해당 조건을 찾을 수 있는 query를 다 만들어주어야 하는지 아니면 find로 데이터를 모두 취합해서 들고오면 프론트에서 알아서 원하는 데이터를 찾는 방식으로 구현되는 것이 맞는건지 궁금합니다.

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
Haewoong Lee 댓글 1 좋아요 0 조회수 353

외래키 지정에 관해서

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

@ManyToOne(() => ProductCategory) @Field(() => ProductCategory) productCategory: ProductCategory; 외래키를 위와 같이 지정해주는 경우와 @ManyToOne(() => ProductCategory) @Field(() => String) productCategoryId: string; 이렇게 지정해주는 경우 데이터베이스에 테이블 사이의 관계가 만들어질 때 차이는 없나요? typeORM과 graphQL 요청시 객체를 그대로 전달하느냐 아니면 string 형식의 id만 전달하느냐 정도의 차이만 있나요?

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
Haewoong Lee 댓글 1 좋아요 0 조회수 249

08-02 강의에 설치해야될 패키지가 더 생긴건가요?

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

강의 중간에 yarn으로 패키지 설치하는 부분이 있는데 강의에 나와있는 3개의 패키지 말고 @apollo/server를 따로 설치해줘야 하는 것 같습니다. 뭔가 바뀐건가요? 일단은 이렇게 해서 넘어 가긴 했습니다

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
박상준 댓글 1 좋아요 0 조회수 446

section 29 수업과 관련해서 질문드립니다!

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

안녕하세요 선생님. 재접속시 column이 삭제되는 문제는 버전을 낮추니 해결되었습니다! 다만 app.module.ts 에서 @Module decorator 설정 중 entities: [] 부분에 glob path 설정이 안돼서 버전과 관련된 것인지 궁금해서 질문드립니다! ( glob path만 입력했을 때 entity를 읽지 못해 직접 입력해주니 해결되었습니다) ( 아직 실력이 부족해 질문이 상세하지 못한 점 양해 부탁드립니다. )

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
김민규 댓글 1 좋아요 0 조회수 341

데이터 수정에 관하여

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

수업에서는 product 테이블을 생성할 때 연관된 테이블의 데이터도 한번에 만들 수 있도록 구현하였습니다. 그렇다면 데이터 수정도 product의 mutation 요청으로 연관 테이블들의 데이터도 모두 수정할 수 있도록 구현해야 하나요? 이렇게 하려니 product 업데이트를 위해 입력해야 하는 데이터가 너무 많아지고 연관된 테이블의 데이터를 수정하는 경우에 create처럼 연관된 테이블의 컬럼의 데이터를 하나하나 다시 다 지정해줘야 하는 불편함도 있습니다. 이렇게 한방에 처리하는거 말고 일단 product update mutation에는 product의 본래 컬럼들만 수정할 수 있도록 처리하고 연관된 테이블의 데이터는 연관 테이블의 기본키로 해당 테이블들의 update mutation으로 처리해도 될까요? 일단은 연관된 테이블의 기본키를 product의 fetchProduct로 조회하고 찾은 키를 이용해서 연관 테이블의 데이터를 수정하는 방식입니다. 어떤 구조가 올바른 방식일까요?

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
Haewoong Lee 댓글 1 좋아요 0 조회수 339

docker-compose 후 데이터 전송 시 에러에 대해서...

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

먼저 각 폴더의 경로입니다. 해당 코드는 몽고디비 경로입니다. 야믈파일에서의 코드입니다. docker-compose up 을 하고 데이터를 전송 했을 때의 에러입니다. (바디 안에 phone의 값은 스크린샷으로 인해 지운 부분입니다.) docker-compse를 하지 않은 상태에서의 데이터 전송 메세지입니다. 도커화 시키기 전에 바로 내 컴퓨터에서는 잘 전송이 되어지는데 docker-compose했을 때에 에러가 발생을 합니다. 위에는 docker-compose up명령어를 작동 시켰을때 나오는 메세지들인데 해당 건에서는 에러메세지라고 보일 만한 것들을 찾지 못하였습니다. 처음에는 몽고디비 경로를 잘못 설정 한 것 같아서 강의를 다시 보고 야믈파일에서 써주었던 database경로로 네임 리졸류션 하여 설정을 해주었는데 에러가 발생을 하여 질문을 남깁니다. ㅠ-ㅠ 혹시 제가 놓친 부분이나 잘못된 부분이 있다면 가르쳐주신다면 감사드립니다 ㅠㅠ 에러를 해결해보기 위해 도전해본 방법은 3가지 였습니다. 몽고디비 주소를 127.0.0.1:27017 에서 database:27017로 변경 후 도커빌드 -업 기존에 실행되고 있던 몽고디비를 중지한 후 도커 컴포즈업 실행 도커 이미지 모두 삭제한 후 다시 빌드 업 실행 해결 방법을 아신다면 답변 부탁드립니다. 감사합니다.

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
aegis0918 댓글 1 좋아요 0 조회수 506

컨트롤러 반환 타입 질문입니다.

해결됨

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

안녕하세요, 강사님. 컨트롤러 코드 관련 질문입니다. 작성한 코드는 컨트롤러의 메소드 반환 타입을 void로 해서 아무것도 반환하지 않는데요, 만약 postmapping 관련 메소드 작성 시, 작성한 게시글의 id값을 반환해주는 코드와 큰 차이가 있을까요? 그리고 찾아보던 중, ResponseEntity를 사용해서 반환해주는 메소드를 보았는데, 메소드의 반환 타입에 따라 기능에 큰 차이가 있는지, 아니면 API 명세의 차이만 있고 기능에는 크게 차이가 없는지 궁금합니다!

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
jd 댓글 1 좋아요 1 조회수 842

memberServiceTest 회원가입 NullPointerException 오류

해결됨

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 안녕하세요. 강의를 한 번 완주한 후 개별적으로 예제와 다르게 다시 공부하고 있는데 오류가 나서요..ㅜㅜ https://drive.google.com/file/d/1Fe9hZbwSCKFYyQtmj_TU2Sl9VwqeXCsO/view?usp=sharing 무엇 때문에 오류가 났는지 알 수 있을까요??

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
새싹 댓글 2 좋아요 0 조회수 604

section 10 수업과 관련해서 질문드립니다!

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

데이터 추가 후 서버를 종료하고 다시 실행시키면 사진처럼 id column이 사라져버립니다. 이유를 모르겠습니다 ㅠ..

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
김민규 댓글 1 좋아요 0 조회수 415

Duplicate entry '' for key 'product.PRIMARY' 에러

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

graphql로 상품등록 하고 mysql를 끄고 다시 키면 Duplicate entry '' for key 'product.PRIMARY' 에러가 발생합니다. 그래서 mysql에 있는 데이터를 삭제하고 다시 mysql를 키면 정상적으로 작동을 합니다. 데이터를 수동으로 삭제를 안하고 작동을 어떻게 시킬수 있나요?

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
WooQ 댓글 1 좋아요 0 조회수 723

section 29 update 함수 어떻게 수정하면 될까요?

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

감이 안잡히는데 좀 도와주세요 ㅜㅜ 힌트라도 주시면 감사하겠습니다.. async update({ productId, updateProductInput, }: IProductsServiceUpdate): Promise<Product> { const product = await this.findOne({ productId }); this.checkSoldout({ product }); const result = this.productsRepository.save({ ...product, // 수정 후 수정되지 않은 다른 결과값까지 모두 받고 싶을 때 사용 ...updateProductInput, }); return result; }

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
Haewoong Lee 댓글 1 좋아요 0 조회수 500

인기 태그

인프런 TOP Writers

주간 인기글