这是一个简单的场景
我想查询 GraphQL 并获取今年上学超过 200 天的所有学生。
我有一个 Student sequelize 模型,一个匹配的 GraphQL 对象,一个接受 days int 作为参数的 student Query { Students(days:200) }
我显然想要做的是实现逻辑“让所有学校访问计数器大于 200 的学生”作为一个例子......
我正在使用 graphql-sequelize 在 sequelize 和 GraphQL 之间进行粘合。
一个简单的示例查询定义如下所示:

students: {
                type: new GraphQLList(Student),
                args:{
                    id  : {type:GraphQLInt},
                    days: {type:GraphQLInt}
                },
                resolve: resolver(models.Student)
            }

如您所见,此结构不允许我向查询插入一些逻辑...
如果您有使用 GraphQl 和 Sequelize 的经验 - 这是一个非常普遍的情况......我很感激任何帮助解决它。
干杯
半开

最佳答案

查看 Sequelize docs ,您可以尝试在学生解析函数中执行以下操作:

resolve(root, args) {
    // Assuming you've imported your model
    return Db.models.student.findAll({
        where: {
            days: {
                // greater than
                $gt: args.days
            }
        }
    });
}

关于node.js - 如何将查询逻辑添加到基于 graphql-sequelize 的设置中?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37510286/

10-15 14:31
查看更多