inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

date를 인식 못하는 문제

해결된 질문

343

작성자 없음

0

엔티티

@Entity()
@ObjectType()
export class Reservation {
    @PrimaryGeneratedColumn('uuid')
    @Field(() => String)
    reservationId: string;

    @Column({ nullable: false })
    @Field(() => Date)
    startDate: Date;

    @Column({ nullable: false })
    @Field(() => Date)
    endDate: Date;

    @Column({ nullable: false })
    @Field(() => Int)
    usersNumber: number;

    @Column({ nullable: false })
    @Field(() => Int)
    lengthOfStay: number;

    @Column({ nullable: false })
    @Field(() => Int)
    price: number;

    @ManyToOne(() => Member)
    @JoinColumn({ name: 'memberId' })
    @Field(() => Member)
    member: Member;

    @ManyToOne(() => Campground)
    @JoinColumn({ name: 'campgroundId' })
    @Field(() => Campground)
    campground: Campground;

    @ManyToOne(() => Tent)
    @JoinColumn({ name: 'tentId' })
    @Field(() => Tent)
    tent: Tent;

    @DeleteDateColumn()
    deletedAt: Date;
}

 

데이터 생성 DTO

@InputType()
export class CreateReservationInput extends OmitType(
    Reservation,
    ['reservationId', 'member', 'campground', 'tent'],
    InputType,
) {
    @Field(() => String)
    memberId: string;

    @Field(() => String)
    campgroundId: string;

    @Field(() => String)
    tentId: string;
}

 

 

 

위 코드에 graphQL 요청시 에러가 발생합니다.

mutation { 
  createReservation (
    createReservationInput: { 
      startDate: "2023-01-01" 
      endDate: "2023-06-06" 
      usersNumber: 5 
      lengthOfStay: 10 
      price: 5 
      memberId: "lhw3542" 
      campgroundId: "d35d3972-5c07-47d7-94a2-23c784f0a27e" 
      tentId: "3ae33a7c-c898-4b66-b110-02b4f8c96398" 
    } 
  ) { 
    reservationId 
    startDate 
    endDate 
    usersNumber 
    lengthOfStay 
    price 
    member { memberId } 
    campground { campgroundId } 
    tent { tentId } 
  }
}

 

Field 'startDate' doesn't have a default value

날짜 형식을 읽지 못하는 것 같은데 무엇이 잘못된 걸까요?

아래와 같이 DTO에 직접 써줘도 인식을 못하고 있습니다.

    @Field(() => Date)
    startDate: Date;

    @Field(() => Date)
    endDate: Date;

javascript node.js express docker tdd rest-api nestjs

답변 1

0

노원두

안녕하세요! Haewoong님!

해당 에러 메시지는 resolver에서 받은 startDate가 mysql에 저장되지 못하고 있어서 발생된 mysql 에러 메시지 입니다!

따라서, dto 및 graphql은 정상적으로 통과되었을 것이며, 통과된 데이터가 왜 mysql에 저장되지 못하고 있는지 해당 부분을 확인해 보시면 좋을 것 같습니다!^^

윈도우에서 Node js를 설치하고 싶어요

0

33

0

그래프 ql 문서 사용할때 느낌표 남는거 어떻게 없애나요?

0

103

2

강의 전체 소스 코드를 받고싶습니다.

0

95

2

fontawesome 사용 문의

0

96

2

소스 코드 부탁드립니다~

0

100

2

깃 레포지터리 소스

0

97

2

커리큘럼12.css 정렬 에 나오는 과제 정답알고싶어요

0

85

2

10-01 Entity TypeOrmModule.forRoot 에 entities

0

103

3

강의 버전관련 문의입니다

0

114

2

Ubuntu 설치 관련

0

74

1

schema.gql 질문 드립니다.

0

64

1

서버 재실행시 Many to Many

0

120

3

input 관련 문의

0

97

2

Rest API 보다는 graphql이 주된 내용인데

0

145

2

강의 전체 소스코드 받을수있을까요?

0

170

1

도커볼륨 마운트 관련

0

140

2

findOne 타입스크립트오류

0

118

1

http => htrtps 호출 인증서 신뢰 오류

0

378

1

self-signed certificate in certificate chain 에러 발생

0

441

1

mongoose 설치 오류

0

150

1

특정 API, 특정 IP 허용 (단일경로에 CORS 활성화)

0

300

2

08-06

0

189

3

구조랑 패턴 관련해서 질문

0

134

2

mydocker

0

135

2