如何通过 Rails 中的 neo4j.rb 从 Neo4j 数据库中获取字段 <id> 的值?
How to get value of field <id> from Neo4j database by neo4j.rb in Rails?
哪个方法neo4j.rb
从Neo4j
数据库中获取<id>
字段的值?
这取决于你的意思 ;)
Neo4j.rb 项目有两个主要的 gem:neo4j
和 neo4j-core
。如果您使用 neo4j
gem 在 Neo4j 中创建 ActiveNode
/ ActiveRel
对象,您可以使用 node_object.id
/ node_object.uuid
方法获取gem生成的UUID或者node_object.neo_id
方法获取数据库生成的Neo ID。 gem 生成 UUID,因为 Neo4j 内部 ID 可以回收,因此不提供对节点的外部引用的最佳选择。但请记住,如果您在模型中使用 id_property
方法,这将改变由 gem.
生成的 ID 的行为
neo4j-core
gem 允许您直接进行 Cypher 查询,然后您可以从那里得到任何您想要的。一个例子:
# Gets the Neo4j internal ID
Neo4j::Session.current.query("MATCH (n) WHERE n.name = 'Sue' RETURN ID(n)")
哪个方法neo4j.rb
从Neo4j
数据库中获取<id>
字段的值?
这取决于你的意思 ;)
Neo4j.rb 项目有两个主要的 gem:neo4j
和 neo4j-core
。如果您使用 neo4j
gem 在 Neo4j 中创建 ActiveNode
/ ActiveRel
对象,您可以使用 node_object.id
/ node_object.uuid
方法获取gem生成的UUID或者node_object.neo_id
方法获取数据库生成的Neo ID。 gem 生成 UUID,因为 Neo4j 内部 ID 可以回收,因此不提供对节点的外部引用的最佳选择。但请记住,如果您在模型中使用 id_property
方法,这将改变由 gem.
neo4j-core
gem 允许您直接进行 Cypher 查询,然后您可以从那里得到任何您想要的。一个例子:
# Gets the Neo4j internal ID
Neo4j::Session.current.query("MATCH (n) WHERE n.name = 'Sue' RETURN ID(n)")