Skip to content

[Question] Serverless integration with nestjs and graphql throws error - Cannot determine a GraphQL output type for the "id". #1522

Open
@aditijain-2

Description

@aditijain-2

Setup:
NestJs [8.1.6]
TypeOrm [^0.2.41]
Nestjs-Query [^0.30.0]
PostgreSQL

I am trying to achieve serverless integration in our application by referring - Nestjs serverless docs

If I start the lambda function locally, using commands -

npm run build 
npx serverless offline 

The GraphQL playground loads but crashes immediately.
It throws an error - Error: Cannot determine a GraphQL output type for the "id". Make sure your class is decorated with an appropriate decorator.
However, when I am running the application without serverless, it works.

I have added @ObjectType() decorator to the class as well.

DTO class -

@ObjectType('Section')
@QueryOptions({
  pagingStrategy: PagingStrategies.OFFSET,
  enableTotalCount: true,
})
export class SectionDTO {
  @Field(() => ID)
  id!: string;

  @FilterableField()
  name!: string;

  @FilterableField(() => GraphQLISODateTime)
  created!: Date;

  @FilterableField(() => GraphQLISODateTime)
  updated!: Date;
}

Entity Class -

import {
  BaseEntity,
  Column,
  CreateDateColumn,
  Entity,
  OneToMany,
  PrimaryGeneratedColumn,
  UpdateDateColumn,
} from 'typeorm';
import { Field, ID, ObjectType } from '@nestjs/graphql';

@Entity('section')
@ObjectType()
export class SectionEntity extends BaseEntity {
  @Field(() => ID)
  @PrimaryGeneratedColumn('uuid')
  id!: string;

  @Column()
  name!: string;

  @CreateDateColumn()
  created!: Date;

  @UpdateDateColumn()
  updated!: Date;
}

How can I resolve this issue?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions