从带有查询的 graphql 问题开始
starting with graphql-problems with queries
您好,我刚刚开始使用 graphql,所以请耐心等待并非常明确。
我在 MySQL 中有一个数据库,其中包含具有 id、名称和用户数组属性的部门列表。我已经以这种方式在架构中明确指出
type Department {
id: ID!
name: String!
user: [User]
}
然后我创建了几个查询,即。 allDepartments 和 getDepartment 这样
type Query {
departments: [Department!]!
getDept(id: ID!): Department!
}
解析器函数就是那些
Query: {
departments: async (parent, args, context) => {
return context.prisma.department.findMany();
},
getDept: async (parent, args, context) => {
return context.prisma.department.findUnique({
where: { id: args.id },
});
},
},
然而
当我查询所有部门时,我得到了列表,但用户数组是空的(而每个人至少有一个人)
使用getDept,只有在where obj 中对id 进行硬编码时,我才能设法获得该部门。我怎样才能实现一个查询,我可以将 id 作为参数传递并让 findunique 捕获那个特定的查询?我可以使用部门名称而不是部门名称吗?
args.id需要解析为int
findUnique 不是正确的方法,因为它必须与架构中标记为“唯一”的字段一起使用
您好,我刚刚开始使用 graphql,所以请耐心等待并非常明确。 我在 MySQL 中有一个数据库,其中包含具有 id、名称和用户数组属性的部门列表。我已经以这种方式在架构中明确指出
type Department {
id: ID!
name: String!
user: [User]
}
然后我创建了几个查询,即。 allDepartments 和 getDepartment 这样
type Query {
departments: [Department!]!
getDept(id: ID!): Department!
}
解析器函数就是那些
Query: {
departments: async (parent, args, context) => {
return context.prisma.department.findMany();
},
getDept: async (parent, args, context) => {
return context.prisma.department.findUnique({
where: { id: args.id },
});
},
},
然而 当我查询所有部门时,我得到了列表,但用户数组是空的(而每个人至少有一个人) 使用getDept,只有在where obj 中对id 进行硬编码时,我才能设法获得该部门。我怎样才能实现一个查询,我可以将 id 作为参数传递并让 findunique 捕获那个特定的查询?我可以使用部门名称而不是部门名称吗?
args.id需要解析为int findUnique 不是正确的方法,因为它必须与架构中标记为“唯一”的字段一起使用