私は、neo4j に保存されているすべての映画の詳細を保存したプロトタイプに取り組んでいます。私はプログラミング言語としてpythonを使用しています。
ここで、特定のレベル (10.0 としましょう) で評価した映画を見つけたいと思います。このために、次の Cypher クエリを作成しました。
START me=node(1)
MATCH me-[r:likes]-> movies
WHERE has(r.Ratings) and r.Ratings = '10.0'
RETURN movies
これは、neo4j webadmin で問題なく動作します。ただし、 python を使用して同じものを実行すると:
myMovies = db.query("START me=node({id}) MATCH me-[r:likes]-> movies WHERE has(r.Ratings) and r.Ratings = '10.0' RETURN movies",id=user["nodeID"])
次のエラーが表示されます。
Traceback (most recent call last):
File "GraphTest.py", line 228, in <module>
test.findTaste("Paritosh Kumar")
File "GraphTest.py", line 31, in findTaste
taste = self.BuildTasteForUser(user)
File "GraphTest.py", line 52, in BuildTasteForUser
myMovies = db.query("START me=node({id}) MATCH me-[r:likes]-> movies WHERE has(r.Ratings) and r.Ratings = '10.0' RETURN movies",id=user["nodeID"])
File "/usr/local/lib/python2.7/dist-packages/neo4j/__init__.py", line 155, in query
return self._cypher_engine.execute(query, **params)
File "/usr/local/lib/python2.7/dist-packages/neo4j/cypher.py", line 31, in execute
return ExecutionResult(self._engine.execute(query,to_java(params)))
File "/usr/local/lib/python2.7/dist-packages/neo4j/_backend.py", line 156, in decorator
return fn(*args, **kwargs)
jpype._jexception.CypherExceptionPyRaisable: unknown function
"START me=node({id}) MATCH me-[r:likes]-> movies WHERE has(r.Ratings) and r.Ratings = '10.0' RETURN movies"
私は Cypher と neo4j 自体が初めてで、なぜこれが起こっているのかわかりません。誰かが私を助けてくれますか?
レッツ、パリトッシュ