2017-02-04 3 views
0

python에서 neo4j에서 간단한 그래프 쿼리를 수행하려고합니다. 내 쿼리는py2neo 그래프 쿼리의 ValueError

def do_query(self): 
    graph = Graph(settings.NEO4J_CONNECTION_STRING) 

    query = 'MATCH (n:SomeNode) WHERE n.id = ' + id + ' RETURN n' 
    data = graph.cypher.execute(query) 

처럼 보이지만 내가 장고 REST 핸들러를 실행할 때, 나는 시작할 위치를 정말 잘 모르겠어요 다음과 같은 오류

Traceback (most recent call last): 
File "/Users/me/.virtualenvs/app/lib/python2.7/site-packages/django/core/handlers/base.py", line 149, in get_response 
response = self.process_exception_by_middleware(e, request) 
File "/Users/me/.virtualenvs/app/lib/python2.7/site-packages/django/core/handlers/base.py", line 147, in get_response 
response = wrapped_callback(request, *callback_args, **callback_kwargs) 
File "/Users/me/.virtualenvs/app/lib/python2.7/site-packages/django/views/decorators/csrf.py", line 58, in wrapped_view 
return view_func(*args, **kwargs) 
File "/Users/me/.virtualenvs/app/lib/python2.7/site-packages/django/views/generic/base.py", line 68, in view 
return self.dispatch(request, *args, **kwargs) 
File "/Users/me/.virtualenvs/app/lib/python2.7/site-packages/rest_framework/views.py", line 466, in dispatch 
response = self.handle_exception(exc) 
File "/Users/me/.virtualenvs/app/lib/python2.7/site-packages/rest_framework/views.py", line 463, in dispatch 
response = handler(request, *args, **kwargs) 
File "/Users/me/Development/app/search/api/views.py", line 351, in get 
results = graph_queries.do_query(user_id) 
File "/Users/me/Development/app/app/graph_queries.py", line 43, in do_query 
data = graph.cypher.execute(query) 
File "/Users/me/.virtualenvs/app/lib/python2.7/site-packages/py2neo/core.py", line 661, in cypher 
metadata = self.resource.metadata 
File "/Users/me/.virtualenvs/app/lib/python2.7/site-packages/py2neo/core.py", line 213, in metadata 
self.get() 
File "/Users/me/.virtualenvs/app/lib/python2.7/site-packages/py2neo/core.py", line 258, in get 
response = self.__base.get(headers=headers, redirect_limit=redirect_limit, **kwargs) 
File "/Users/me/.virtualenvs/app/lib/python2.7/site-packages/py2neo/packages/httpstream/http.py", line 966, in get 
return self.__get_or_head("GET", if_modified_since, headers, redirect_limit, **kwargs) 
File "/Users/me/.virtualenvs/app/lib/python2.7/site-packages/py2neo/packages/httpstream/http.py", line 943, in __get_or_head 
return rq.submit(redirect_limit=redirect_limit, **kwargs) 
File "/Users/me/.virtualenvs/app/lib/python2.7/site-packages/py2neo/packages/httpstream/http.py", line 433, in submit 
http, rs = submit(self.method, uri, self.body, self.headers) 
File "/Users/me/.virtualenvs/app/lib/python2.7/site-packages/py2neo/packages/httpstream/http.py", line 302, in submit 
raise ValueError("Unsupported URI scheme " + repr(uri.scheme)) 
ValueError: Unsupported URI scheme None 

를 얻을. Neo4J와의 연결이 양호하다는 확신이 들며, 핸들러가 traceback에 표시된대로 제대로 호출되고 있습니다. 내 검색어에 문제가 있습니까?

+0

검색어가 정상적으로 보입니다. 'settings.NEO4J_CONNECTION_STRING'을'print'로 디버깅 할 수 있습니까? 예를 들어,이 설정은 함수 내에서 사용 가능합니다. –

+0

Hmmm, empty ... settings.py에 대한 로컬 재정의가있는 내 development.py에 설정되어 있다는 것을 알고 있습니다. (나는 생각한다) –

+0

그러면 어디에서보아야하는지 알 수있다 ;-) –

답변

0

from django.conf import settings이 아닌 import settings을 사용했는데 정확한 설정을 읽지 못하는 것이 문제였습니다.