如何将查询逻辑添加到基于 graphql-sequelize 的设置?

Posted

技术标签:

【中文标题】如何将查询逻辑添加到基于 graphql-sequelize 的设置?【英文标题】:How to add query logic to graphql-sequelize based setup? 【发布时间】:2016-09-27 09:01:06 【问题描述】:

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

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

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

【问题讨论】:

【参考方案1】:

查看Sequelize docs,你可以尝试在学生解析函数中做这样的事情:

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

【讨论】:

以上是关于如何将查询逻辑添加到基于 graphql-sequelize 的设置?的主要内容,如果未能解决你的问题,请参考以下文章

在将按钮添加到 jQuery UI 对话框时,如何防止有人更改或避免我的 JavaScript 逻辑?

添加到基于表/查询的 Access 组合框

数据报表查询

Oracle ADF在查询组件中将secondaryPattern添加到Date

将业务逻辑添加到 spring-data-rest 应用程序

如何将 CSS 按钮添加到 Django 管理员以实际触发逻辑