小编典典
我最终创建了一个名为ModelMeta的Model元类,该元类注册了类型化的属性。
在这种情况下,类型化的属性是图形数据库“属性”,它们都是Property类的所有子类。
这是一个示例模型声明:
# people.py
from bulbs.model import Node, Relationship
from bulbs.property import String, Integer, DateTime
from bulbs.utils import current_datetime
class Person(Node):
element_type = "person"
name = String(nullable=False)
age = Integer()
class Knows(Relationship):
label = "knows"
created = DateTime(default=current_datetime, nullable=False)
用法示例:
>>> from people import Person
>>> from bulbs.neo4jserver import Graph
>>> g = Graph()
# Add a "people" proxy to the Graph object for the Person model:
>>> g.add_proxy("people", Person)
# Use it to create a Person node, which also saves it in the database:
>>> james = g.people.create(name="James")
>>> james.eid
3
>>> james.name
'James'
# Get the node (again) from the database by its element ID:
>>> james = g.people.get(james.eid)
# Update the node and save it in the database:
>>> james.age = 34
>>> james.save()
# Lookup people using the Person model's primary index:
>>> nodes = g.people.index.lookup(name="James")
看到…
灯泡模型API:http://bulbflow.com/docs/api/bulbs/model/
灯泡模型快速入门:http://bulbflow.com/quickstart/#models
2021-01-20