Это моя схема.
type Advisor {
lastName: String
nickName: String
companyName: String
birthDate: String
titleCode: String
birthPlace: String
firstName: String
number: String
nationalityCode: String
genderCode: String
classificationCode: String
civilStatusCode: String
profileTypeCode: String
middleName: String
effectiveDate: String
hash: ID!
suffixCode: String
hierarchyUpwards: [HierarchyTree] @neo4j_ignore
}
И я написал свой собственный распознаватель
следующим образом
resolvers = {
// root entry point to GraphQL service
Advisor: {
hierarchyUpwards(advisor, _, ctx, resolveInfo) {
let session = ctx.driver.session()
let params = { hash: advisor.hash }
console.log(advisor)
let query = ....
return session.run(query, params)
.then(result => { return result.records.map(record => {
return {
//data conversion
}
} )})
}
}
Мой запрос работал, как и ожидалось, всякий раз, когда Я выполняю советник. Ха sh он всегда возвращает неопределенное. и параметр советника всегда пуст.
Моя конфигурация была настроена следующим образом
//neo4j-graphql-related stuff
const apolloTypeDef = typeDefs
// Provide resolver functions for your schema fields
const apolloResolvers = resolvers
const execSchema = makeAugmentedSchema({
typeDefs,
resolvers,
config: {Advisor: {exclude: ['hierarchyUpwards']}}
});
const apolloServer = new ApolloServer({
schema: execSchema,
typeDefs: apolloTypeDef,
resolvers: apolloResolvers,
context:{ driver }});
Есть ли какой-либо способ для меня текущее ха sh объекта, который обрабатывается внутри этого резольвера?