如何通过GraphQL中的ID从数据库中获取记录?

时间:2019-12-18 03:06:01

标签: graphql prisma-graphql graphql-playground

我正在尝试从具有以下ID的GaphQL数据库中获取COLOR(color_code和ID都包括在内)

ck49m8kdx9khr0964dtsodo8m

我运行以下查询:

query {
  colors {
    color_code
    id
  }
}

并获得以下信息:

{
  "data": {
    "colors": [
      {
        "color_code": "#00ff00",
        "id": "ck49m8kdx9khr0964dtsodo8m"
      },
      {
        "color_code": "#00f400",
        "id": "ck49m96i59kn60964ngpps95m"
      }, //etc...

所以我知道它在那里!

我弯腰到文档https://graphql.org/learn/queries/,他们声称我可以传递参数。这是他们的示例:

{
  human(id: "1000") {
    name
    height
  }
}

好的,我会尝试的。但是我得到了错误。

{
  color(id: ck49m8kdx9khr0964dtsodo8m) {
    color_code
    id
  }
}

给我这个错误:

"errors": [
      {
        "message": "Expected type ID!, found ck49m8kdx9khr0964dtsodo8m.",

也许是因为它想要字符串中的ID?

{
  color(id: "ck49m8kdx9khr0964dtsodo8m") {
    color_code
    id
  }
}

不。这是我的新错误:

{
  "data": {
    "color": null
  }
}

有什么作用?

这是我的颜色架构:

type Color {
  id: ID!
  color_code: String!
}

这是我的查询架构:

type Query {
  info: String!
  colorsold: String!
  colors: [Color!]!
  color(id: ID!): Color
  feed: [Link!]!
}

0 个答案:

没有答案