如何仅从Prisma / GraphQL查询中获取过滤的数据

时间:2018-12-03 14:26:58

标签: graphql prisma

我有两组数据(多对多关系)( 用户 事件 )。 我正在使用以下查询来检索和过滤数据。

{
  events(
    where: {
      AND: [
        { location: { name: "Test" } }
        {
          time: {
            startDate_lt: "2018-12-03T13:46:13.021Z"
            endDate_gt: "2018-12-03T13:46:13.021Z"
          }
        }
        {
          participantList_some: {
            participant: { firstName: "Lorem", lastName: "Ipsum" }
          }
        }
      ]
    }

  ) {
    participantList {
      participant {
        firstName
        lastName
      }
    }
    location {
      name
    }
  }
}

到目前为止,我得到了以下结果:

{
  "data": {
    "events": [
      {
        "participantList": [
          {
            "participant": {
              "firstName": "Chuck",
              "lastName": "Norris"
            }
          },
          {
            "participant": {
              "firstName": "Lorem",
              "lastName": "Ipsum"
            }
          }
        ],
        "location": {
          "name": "Test"
        }
      }
    ]
  }
}

我想要拥有的只是让我筛选出的参与者,即。 “ Lorem Ipsum”。这样,我从该事件中吸引了所有(2)个参与者。 所以我想要的结果是:

{
  "data": {
    "events": [
      {
        "participantList": [
          {
            "participant": {
              "firstName": "Lorem",
              "lastName": "Ipsum"
            }
          }
        ],
        "location": {
          "name": "Test"
        }
      }
    ]
  }
}

此刻,我正在从代码中过滤掉不需要的数据。我已经搜索了如何或是否可以通过查询或其他参数来执行此操作,但是没有找到有用的东西。任何帮助或指导,表示赞赏。

1 个答案:

答案 0 :(得分:2)

您可以将过滤器添加到请求的任何字段。这意味着您可以过滤找到的事件中的参与者:

browsers back button