У меня есть простой prisma.schema
⸺
model Joke {
id String @default(cuid()) @id
author Author
content String @unique
}
model Author {
id String @default(cuid()) @id
name String
jokes Joke[]
}
А это мой Query
⸺
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
?