このようなコードがあると仮定して、Neo4jデータベースで2つの頂点間のパスを見つけようとしています
newschool = g.addVerttex();
newschool.Title = 'A nice school';
newuser = g.addVertex();
newuser.name = 'student';
g.addEdge(newuser, g.V.filter{it.Title == 'school'}.next(), 'goesto');
両方の頂点の ID を知っていれば、必要なエッジを取り戻すことができますが、もちろんこれは動的ではありません。
g.v(2).outE.inV.retain([g.v(1)]).back(2);
==> e[1][2-goesto->1]
それで、これを変更して、作業中のクエリをより動的に拡張しようとしました:
g.V.filter{it.name == 'student'}.outE.inV.retain([g.V.filter{it.Title == 'A nice school'}]).back(2);
g.v(g.V.filter{it.name == 'student'}.id).outE.inV.retain([g.v(g.V.filter{it.Title == 'A nice school'}.id)]).back(2)
もちろん、どれもうまくいきませんでした...
g.V.filter{it.name =='student'}
とがg.v(2)
異なるのはなぜですか? なぜ とg.V.filter{it.name == 'student'}.id
同じではないの2
ですか?
私は何を取りこぼしたか?これを機能させるにはどうすればよいですか?
ありがとう。