2017-07-30 10 views
0

私は応答に、このエラーが生じています:なぜ私のcursorForObjectInConnectionがnullを返すのか分かりませんか?

は非NULL可能フィールドTodoEdge.cursorのためにnullを返すことはできません。

これは私の変異コードです:

mutateAndGetPayload: async ({text}, context) => { 
     let newTodo = new TodoModel({ text, _creatorUserId: context.user._id }); 
     await newTodo.save(); 
     return {newTodo}; 
    }, 
    outputFields: { 
    todoEdge: { 
     type: GraphQLTodoEdge, 
     resolve: async ({newTodo}, args,context) => { 
     const todos = await getTodosByUserContext(context.user._id, 'any'); 
     console.log("cursorForObjectInConnection = ",cursorForObjectInConnection(todos, newTodo)) // this logs null? 
     return { 
      cursor: cursorForObjectInConnection(todos, newTodo), 
      node: newTodo, 
     }; 
     }, 
    }, 

ドスとnewTodoはマングースデータベースからretreivedされます。私はこの適切なtodo-modern sampleに従っていると思います。助けて?

答えて

0

のは、以下を試してみましょう:

1)あなたは、あなたの藤堂スキーマごとに特定のユーザーのためにドスを得ることができます

const todos = await Todo.find({}); 

のようなあなたのDBからドスを取得します。 Todo.find({userid:context.user._id});

2)あなたがドスを得れば、カーソルを取得:これは私のために働いた

const cursor = offsetToCursor(todos.length); 

。試してみる。

関連する問題