【发布时间】:2012-12-18 17:49:28
【问题描述】:
我们正在使用带有 Neo4j 的 jRuby on Rails,但我们遇到了一些非常奇怪的错误。目前,我们有用户能够创建帖子。很少,他们似乎在他们的“帖子”关系中得到了展开的节点,而不是 Post 对象。例如,在控制台中,我迭代了一个用户的帖子,结果如下:
> user.posts.each{ |post| puts post }
#<Post:0x49ca112d>
#<Post:0xc9ddbea>
#<Post:0x7e706c75>
Node[438144]
#<Post:0x769dba83>
这会导致各种各样的问题,因为每当我们尝试访问这些非帖子帖子之一的属性或关系时,都会出现这样的错误:
undefined method `[any property or relationship]' for #<Java::OrgNeo4jKernelImplCore::NodeProxy:0x461784b6>
这些裸节点似乎会间歇性地添加到人们的“发布”关系中,我可以手动删除该节点,但这似乎充其量只是权宜之计,因为它们一直在被创建。
所以,我的问题是,我如何 (1) 首先防止创建这些非 Post 对象,以及如何 (2) 清除我的数据库中的这些对象?
【问题讨论】:
标签: neo4j jrubyonrails