1

我有一个简单的prisma.schema⸺</p>

model Joke {
  id      String @default(cuid()) @id
  author  Author
  content String @unique
}

model Author {
  id    String @default(cuid()) @id
  name  String
  jokes Joke[]
}

这是我的Query⸺</p>

t.list.field('getJokeByAuthor', {
    type: 'Joke',
    args: {
        name: stringArg(),
    },
    resolve: (_, {name}, ctx) => {
        return ctx.photon.authors.findMany({
            where: {
                name,
            },
            select: {
                jokes: true,
            },
        });
        // return ctx.photon.jokes.findMany({
        //   where: {
        //     author: {
        //       name,
        //     },
        //   },
        // });
    },
});

评论的有效,而未评论的无效并且给我错误"Cannot return null for non-nullable field Joke.id."。为什么?我想通过调用来访问特定作者的笑话ctx.photon.authors。我怎样才能做到这一点?

另外,getJokeByAuthor的返回类型是[Joke]? 它从哪里得到的?我不应该是[Author]现在回来ctx.photon.authors吗?

4

0 回答 0