両方を行うことができます。
マングースモデルがすでに定義されている場合は、resolve
の記述中にそれらを使用できます。 機能。 次の例
を参照してください。 。
var QueryType = new GraphQLObjectType({
name: 'Query',
fields: () => ({
todos: {
type: new GraphQLList(TodoType),
resolve: () => {
return new Promise((resolve, reject) => {
TODO.find((err, todos) => {
if (err) reject(err)
else resolve(todos)
})
})
}
}
})
})
マングースモデルがない場合、またはmongodbネイティブドライバーを使用する場合は、それも実行できます。以下は、MongoDBNode.JSドライバー を使用してこれを行う簡単な例です。 。
resolve: () => {
return new Promise((resolve, reject) => {
db.collection('todos').find({}).toArray((err, todos) => {
if (err) reject(err)
else resolve(todos)
})
})
}
マングースモデルがあり、それらからGraphQLスキーマを生成したい場合は、graffiti-mongooseに興味があるかもしれません。 、既存のマングースモデルからGraphQLタイプとスキーマを生成します。