Anda bisa melakukan keduanya.
Jika Anda memiliki model luwak yang sudah ditentukan, Anda dapat menggunakannya saat menulis resolve
fungsi. Lihat contoh berikut
.
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)
})
})
}
}
})
})
Jika Anda tidak memiliki model luwak atau jika Anda ingin menggunakan driver asli mongodb, Anda juga dapat melakukannya. Berikut adalah contoh sederhana untuk melakukannya menggunakan Driver MongoDB Node.JS .
resolve: () => {
return new Promise((resolve, reject) => {
db.collection('todos').find({}).toArray((err, todos) => {
if (err) reject(err)
else resolve(todos)
})
})
}
Jika Anda memiliki model luwak dan ingin membuat skema GraphQL dari model tersebut, Anda mungkin tertarik dengan graffiti-mongoose , yang menghasilkan jenis dan skema GraphQL dari model luwak yang ada.