Al hacer el include de los Attributes con Prisma, el tipo que se retorna ya no es solo Avocado, sino: Avocado & { attributes: Attributes | null }
, así que deberíamos cambiar esto en el tipo de retorno de nuestros resolvers. El código final se vería algo como esto:
import { Avocado, Attributes } from '@prisma/client'
const getAllAvocados = async (
parent: unknown,
args: unknown,
{ orm }: ResolverContext
): Promise<(Avocado & { attributes: Attributes | null })[]> => {
try {
return await orm.avocado.findMany({
include: {
attributes: true
}
})
} catch (error) {
console.error('Error getting all the avocados')
console.error(error)
throw error
}
}
const getOneAvocado = async (
parent: unknown,
{
id
}: {
id: string
},
{ orm }: ResolverContext
): Promise<
| (Avocado & {
attributes: Attributes | null
})
| null
> => {
try {
return await orm.avocado.findUnique({
where: { id: parseInt(id) },
include: {
attributes: true
}
})
} catch (error) {
console.error('Error getting all the avocados')
console.error(error)
throw error
}
}
export { getAllAvocados, getOneAvocado }
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?