2016-09-30 6 views
1

2つの頂点の間でエッジプロパティ値を取得しようとしています。例えば。 A - > B AとBは2つの頂点で、プロパティ(name)を持つedgeを持っています。それは私の名前のプロパティ値を与えるスカラーgremlinの2つの頂点の間に出力エッジプロパティ値をフェッチ

graph.V().hasLabel(A).outE().value("name").headOption() 

:よう

私のコードが見えます。与えられた2つの頂点で

は、私は出力としてNoneを取得していないのです

graph.traversal().V().hasLabel(A).outE("test").outV().hasLabel(B).properties("name").headOption() 

'テスト' - エッジラベル '' - エッジプロパティ

と間違っているものをすべてのアイデア私の質問。

答えて

1

あなたが尋ねた前の質問に対するあなたのコメントでこれに答えることができないという謝罪。私は、あなたが探しているものだと思う:

graph.traversal().V() 
    .hasLabel("A").outE("test").as("x").otherV() 
    .hasLabel("B").select("x").properties("name"); 

あなただけのエッジのプロパティの値をしたい場合は、次の操作を行うことができます。

graph.traversal().V() 
    .hasLabel("A").outE("test").as("x").otherV() 
    .hasLabel("B").select("x").values("name"); 

側注を(なぜ、あなたのオリジナルのトラバーサルがあります間違った):あなたのオリジナルトラバーサル:

graph.traversal().V().hasLabel(A).outE("test").outV().hasLabel(B).properties("name").headOption() 

は、次のことをやっている:

  1. ラベルですべての頂点を取得し、それらの頂点から"A"

  2. はその後からプロパティ"name"を取得するラベル「B」を持つ頂点にラベル"test"を持って外側へ行くの縁をたどりますそれらの頂点

実際に頂点のプロパティを求めています。

+0

ありがとうございます。できます。 :) – Gopi

関連する問題