我正在尝试在Django视图中使用.cypher
查询我的Employee模型。我在其他地方使用过此查询,因此我知道该部分有效。
query_string = "MATCH (n)-[r:REPORTS_TO|BRANCH_OF|OVERSEEN_BY]->() RETURN n, r"
query_results = Employee.cypher(
self = Employee,
query = query_string,
params = None)
*** ERROR _pre_action_check()
missing 1 required positional argument: 'action'
此错误在此处指向第204行:
https://github.com/neo4j-contrib/neomodel/blob/master/neomodel/core.py
我尝试过:
此外,如果我尝试通过在模型中定义密码调用然后在视图中调用密码来遵循文档说明,我仍然会遇到相同的错误
更新: 完整的跟踪这里https://imgur.com/a/o3rQr
答案 0 :(得分:3)
使用三个位置args调用此方法的事实似乎是错误的。
方法签名为:
def cypher(self, query, params=None):
您的self
前缀已经提供了-Employee.
。 (错误,请参见下文)
-query
仅应作为位置query_string
参数传递
-params=None
只是传递了默认值,这是没有用的。
您尝试过Employee.cypher(query_string)
吗?
根据Tezra所说的,您需要一个Employee实例:
employee = Employee()
然后致电employee.cypher(query_string)