找不到方法:NeptuneGraphTraversal.values()
Could not locate method: NeptuneGraphTraversal.values()
当 运行 使用 gremlin 查询 aws neptune 时,我收到此错误 Could not locate method: NeptuneGraphTraversal.values()
。具体查询是这样的:
import { process } from 'gremlin';
const { statics, t } = process;
function getUsers() {
return await this.query(g =>
g
.V()
.match(
statics
.as('me')
.V(this.id)
// .has('user', t.id, this.id)
.fold()
.coalesce(
statics.unfold(),
statics.addV('user').property(t.id, this.id)
),
statics.as('me').out('followed').out('followed').as('x'),
statics.as('x').not(statics.has(t.id, this.id)),
statics
.as('x')
.out('followed')
.has(t.id, this.id)
.count()
.is(0),
statics.as('x').in_('skip').has(t.id, this.id).count().is(0)
)
.select('x')
.values(t.id)
.dedup()
.sample(3)
.toList()
);
}
错误消息表明 neptune 的 GraphTraversal
没有实现 values
method, but I've reviewed the implementation differences 并且没有提及。可能是什么问题呢?我可以考虑哪些替代方案?
这可能是因为您正在使用 values() 步骤来提取 ID。 values() 接受一个 属性 键的字符串。您更可能需要的是 id() 步骤。
当 运行 使用 gremlin 查询 aws neptune 时,我收到此错误 Could not locate method: NeptuneGraphTraversal.values()
。具体查询是这样的:
import { process } from 'gremlin';
const { statics, t } = process;
function getUsers() {
return await this.query(g =>
g
.V()
.match(
statics
.as('me')
.V(this.id)
// .has('user', t.id, this.id)
.fold()
.coalesce(
statics.unfold(),
statics.addV('user').property(t.id, this.id)
),
statics.as('me').out('followed').out('followed').as('x'),
statics.as('x').not(statics.has(t.id, this.id)),
statics
.as('x')
.out('followed')
.has(t.id, this.id)
.count()
.is(0),
statics.as('x').in_('skip').has(t.id, this.id).count().is(0)
)
.select('x')
.values(t.id)
.dedup()
.sample(3)
.toList()
);
}
错误消息表明 neptune 的 GraphTraversal
没有实现 values
method, but I've reviewed the implementation differences 并且没有提及。可能是什么问题呢?我可以考虑哪些替代方案?
这可能是因为您正在使用 values() 步骤来提取 ID。 values() 接受一个 属性 键的字符串。您更可能需要的是 id() 步骤。