问题标签 [neo4j-graphql-js]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
125 浏览

graphql - 在与类型定义相同的模式文档中扩展类型是否有效

我正在努力寻找清楚这一点的文档:我可以在定义类型时在同一个模式文档中扩展类型吗?我不断收到如下错误:

架构文档:

这是不允许的,但任何人都可以指出规范/其他文档明确说明的地方吗?

0 投票
1 回答
1178 浏览

neo4j - 来自 GraphQL Mutation 的响应未按预期工作

我正在通过解析器运行 GraphQl 突变。它针对 Neo4j 数据库。查询工作正常,但我无法以将结果显示在结果中的方式构造结果。我尝试了几种不同的结果和记录映射组合,但我无法让返回的结果集的属性显示在输出中。

具体来说,您将在下面的示例中看到,响应中的 name 字段(通过 GraphiQL)为 null,而我希望它被设置为返回的值。

解析器:

GraphQL 查询

输出:

相关架构部分

0 投票
1 回答
45 浏览

neo4j - Neo4j-graphql 自引用类型为空

使用 apollo 和 neo4j-graphql-js 尝试使用带有 graphql 的 neo4j。这是我的 typeDefs:

我总是把记者说成是空的。关于我所缺少的任何建议?

0 投票
1 回答
94 浏览

neo4j - Neo4j with graphql:无法获取自引用类型

我有简单的 neo4j 和 graphql 示例。这是我的 typeDefs:

我能够获取除reportees之外的所有数据,这些数据始终为空。我在这里想念什么?这是我用于此示例的示例密码创建脚本。

0 投票
2 回答
100 浏览

neo4j - 如何在 Cypher 中拼接一个链表

我有一个LogEntries. 每个条目都有一个日期。每个用户恰好有 1 个日志。

如果我收到过去的日期,拼接新日志条目的最佳方式是什么?

我正在构建一个公共 graphql API 来跟踪 COVID-19 病例的联系: https ://github.com/mmmmoli/contacttracing.app-graphql-api/blob/master/src/appConfigs/schema.ts#L55

任何帮助都是极好的!

来自 Max 的欺诈帖子的灵感: https ://maxdemarzi.com/2019/08/19/finding-fraud/

0 投票
0 回答
498 浏览

javascript - 在 graphql 解析器函数中使用根对象访问父字段属性

我正在使用 neo4j-graphql-js 库从架构中自动生成解析器。对于模式(员工)中的节点,我需要从休息调用中获取特定的节点属性(empid),因为由于隐私问题,我们计划从我们的 neo4j 数据库中删除该属性。我正在尝试为该字段编写自定义解析器。我已将 @neo4j 指令添加到架构中的该字段,以便 neo4j 忽略它。我需要进行一个休息调用,它接受一个名为 uid 的参数并返回相应的 empid。此 iuid 是 Employee 节点的属性,因此存在于我的 neo4j 数据库中。问题是在编写解析器时,根对象仅保存查询中访问的字段值。因此,如果 iuid 不是查询的一部分,我将无法在根 obj 中获取它的值。 这是我的员工节点:-

这是我的解析器,我在哪里返回一个虚拟字符串而不是进行休息调用:-

这是我的查询:- {

}

我想访问员工节点的所有字段的所有值,以便获取 iuid。控制台日志返回未定义,因为根对象只有查询的字段。我不知道是否有可能,如果没有,是否有任何解决方法?

0 投票
1 回答
215 浏览

neo4j - Neo4j: return error if no matching nodes found when creating a relationship?

Apologies if this has already been asked, but I was unable to find the answer

I would like to error when trying to create a relationship between nodes, where one or both of the nodes do not exist

For example, the following code just returns no results, but I would like it to raise an error to let me know that these nodes do not exist, so that I can surface that error to my application:

Please assume that the database is empty and therefore no nodes were matched

I tried to add a constraint, but I didn't know how to approach it and if this is possible - are you able to help please?

0 投票
1 回答
272 浏览

javascript - 使用 neo4j-graphql-js 时如何访问自定义 graphQL 解析器中的请求标头?

尝试时:

错误:req 未定义

并在尝试时:

错误:未提供 Neo4j JavaScript 驱动程序实例。

我已经尝试了很多不同的方法来编写它和阅读 Apollo 源代码,但都没有成功。

0 投票
1 回答
112 浏览

neo4j - Neo4j/GraphQL - 获取链表中的最后一个节点,以便使用新创建的节点继续链表

我有一个组中帖子的链接列表。一个 Group 有一个 FIRST_POST 和随后的 NEXT_POST 关系。GraphQL typedef 如下所示:

密码查询MATCH (g:Group {id: this.id})-[:FIRST_POST|NEXT_POST*]->(post:Post) RETURN post返回特定组的所有帖子。我想创建一个新帖子并将其添加到我模式的 typedef 中的组中。这是我知道不正确的一个尝试,但这是我目前的努力所在:

这是一个接受 post body 和 userId 参数的自定义突变。此行将MATCH (u:User {id: $userId})-[:MEMBER_OF]->(g:Group)-[:FIRST_POST|NEXT_POST*]->(lp:Post) return Last(collect(p))返回最后一篇文章,尽管我知道我无法返回此处并且还没有成功找到为 MATCH 设置别名的方法。最终,我需要从该组中的最后一个 NEXT_POST 中创建 NEXT_POST 关系CREATE (p)-[:NEXT_POST]->(<LAST POST IN GROUP>)。第一行还使用 userId 来查找组,因为用户是 MEMBER_OF 只有一个组,而帖子只属于一个组。

0 投票
0 回答
37 浏览

graphql - 从驱动程序推断出架构后,如何合并架构?

我使用 inferSchema 直接从 neo4j 数据库生成 GraphQL 类型定义,如下所示:

现在我需要将上面的模式与另一个模式合并,这样我就可以扩展一个类型,但是每次我尝试都会引发这个错误:

初始化 Neo4j 架构
这可能需要一些时间,具体取决于数据库 pathToProject\node_modules\graphql\validation\validate.js:124 的大小
throw new Error(errors.map(function (error) { ^ Error: Cannot extend type " Municipio”,因为它没有定义。

这是我尝试合并它的完整代码: