Вложенный запрос TypeORM GraphQL возвращает ноль - PullRequest
0 голосов
/ 30 января 2020

Я пытаюсь использовать вложенный запрос GraphQL для получения информации о проекте А и клиенте. Я могу получить информацию о проекте, но не могу получить информацию о клиенте.

Как правильно получить вложенную информацию?

Модель проекта

import { Entity, BaseEntity, PrimaryGeneratedColumn, Column, ManyToOne} from "typeorm";
import { ObjectType, Field, ID } from "type-graphql";

import {Customer} from "./Customer";


@Entity('project')
@ObjectType()
export class Project extends BaseEntity {
  @Field(() => ID)
  @PrimaryGeneratedColumn()
  id: number;

  @Field(() => String)
  @Column()
  name: string;

  @Field(() => String)
  @Column()
  short_name: string;

  @Field(() => String)
  @Column()
  description: string;

  @Field(() => Customer, { nullable: true })
  @ManyToOne(type => Customer, customer => customer.projects)
  customer: Customer;

}

Пользователь Модель

import { Entity, BaseEntity, PrimaryGeneratedColumn, Column, OneToMany, JoinTable } from "typeorm";
import { ObjectType, Field, ID } from "type-graphql";
import {Project} from "./Project";
import {ProjectUser} from "./Project_handled_by_user";

@Entity('customer')
@ObjectType()
export class Customer extends BaseEntity {
  @Field(() => ID)
  @PrimaryGeneratedColumn()
  id: number;

  @Field(() => String)
  @Column()
  name: string;

  @Field(() => String)
  @Column()
  short_name: string;

  @Field(() => String)
  @Column()
  active: string;

  @Field(() => [Project], { nullable: true })
  @OneToMany(type => Project, project => project.customer)
  projects: Project[];

}

Project Resolver

import { Resolver, Query, Mutation, Arg } from "type-graphql";
import { Project } from "../models/Project";


@Resolver()
export class ProjectResolver {

  @Query(() => [Project])
  projects() {
    return Project.find();
  }

  @Query(() => Project)
  project(@Arg("id") id: string) {
    return Project.findOne({ where: { id } });
  }
}

Например, мой запрос:

{
    project(id: "1"){
        id
        name
        customer{
          id
          name
      }
  }
}

Запрос возвращает:

{
  "data": {
    "project": {
      "id": "1",
      "name": "KFS 5.1",
      "customer": null
    }
  }
}

Спасибо за помощь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...