“覆盖StructuredNode构造函数”的问题

时间:2018-10-15 04:35:22

标签: python neo4j neomodel

尝试覆盖StructuredNode构造函数时遇到此错误,而它与文档中的代码几乎完全相同。

Traceback (most recent call last):
  File "/Users/xiao/PycharmProjects/Fooga_New/test/tmp.py", line 48, in <module>
    tmp_node = Item(test='test_test_test')
  File "/Users/xiao/PycharmProjects/Fooga_New/test/tmp.py", line 45, in __init__
    super(Item, self).__init__(self, *args, **kwargs)
  File "/Users/xiao/PycharmProjects/python3_venv/lib/python3.6/site-packages/neomodel/core.py", line 203, in __init__
    super(StructuredNode, self).__init__(*args, **kwargs)
TypeError: __init__() takes 1 positional argument but 2 were given

这是我的代码:

from neomodel import db, StructuredNode, StringProperty


db.set_connection('bolt://' + 'neo4j' + ':' + '5428' + '@' + '192.168.0.24' + ':' + '7687')


class Item(StructuredNode):
    name = StringProperty(unique_index=True)
    uid = StringProperty(unique_index=True)

    def __init__(self, test, *args, **kwargs):
        # self.product = product
        kwargs["uid"] = 'g.' + str(test)
        kwargs["name"] = test
        super(Item, self).__init__(self, *args, **kwargs)


tmp_node = Item(test='test_test_test')
tmp_node.save()

我想知道我是否正在使用此权限?

谢谢。

1 个答案:

答案 0 :(得分:0)

在继续操作之前,请先看一下*args and **kwargs?

在您的示例中,您可以通过两种方式使用SELECT * FROM Clinic AS curr WHERE Score > 150 AND Date >= ( SELECT DATEADD(DAY, 7, MAX(Date)) -- maximum date + 7 days FROM Clinic AS prev WHERE SubjectID = curr.SubjectID AND Date < curr.Date -- prev dates AND Score > 150 ) 参数:

test