Neo4jrb rails --api: return 个连接节点
Neo4jrb with rails --api: return connected nodes
超级简单的设置:
- 使用
--api
创建了一个新的 rails 应用程序并添加了 generator/framework
- 创建了一个具有
name
属性且与其他 Artefacts(无聊地命名为 .artefacts
)有 has_many
关系的模型(Artefacts)
- 创建了 2 个节点,并加入它们 (
node1.artefacts = node2
)
现在,当浏览到 /artefacts
时,JSON returned 只是 2 个节点。
如何Railsreturn关系
以及未来; Rails return 如何自定义 JSON 布局,例如:
[{"artefact":{"name":"Node1","id":"e6571172-889c-4dd9-abca-a522f28c970d", artefacts: ["0643d8c5-fc67-431c-b015-7c5894439058", "5e7ceb40-18da-474e-8fe0-22d3887943b4"]}}]
这完全取决于您如何序列化。默认情况下 Rails 只会序列化节点对象。您应该能够按照此处针对 ActiveRecord
:
的建议使用 include
选项
Include associated model when rendering JSON in Rails
我个人也喜欢 json:api 对象序列化标准。最大的优势之一是您可以包含关联的对象,并且这些对象可以有效地进行旁加载,这样您就不会在响应中包含重复项。我喜欢它的另一件事是它是一个 标准 ,而当我过去在应用程序中呈现 JSON 时,它通常只是开发人员在该卡上工作的任何内容认为是最好的。
jsonapi-resources
gem 流行于此:
https://github.com/cerebris/jsonapi-resources
gem 负责很多 Rails 集成并为您创建控制器和路由,但与 ActiveNode
的集成存在一些问题。我已经成功地使用了 jsonapi-serializers
gem,但是它需要你自己做更多的事情:
https://github.com/fotinakis/jsonapi-serializers
你可以看看这个 Rails 例子:
https://github.com/fotinakis/jsonapi-serializers#rails-example
超级简单的设置:
- 使用
--api
创建了一个新的 rails 应用程序并添加了 generator/framework - 创建了一个具有
name
属性且与其他 Artefacts(无聊地命名为.artefacts
)有has_many
关系的模型(Artefacts) - 创建了 2 个节点,并加入它们 (
node1.artefacts = node2
)
现在,当浏览到 /artefacts
时,JSON returned 只是 2 个节点。
如何Railsreturn关系
以及未来; Rails return 如何自定义 JSON 布局,例如:
[{"artefact":{"name":"Node1","id":"e6571172-889c-4dd9-abca-a522f28c970d", artefacts: ["0643d8c5-fc67-431c-b015-7c5894439058", "5e7ceb40-18da-474e-8fe0-22d3887943b4"]}}]
这完全取决于您如何序列化。默认情况下 Rails 只会序列化节点对象。您应该能够按照此处针对 ActiveRecord
:
include
选项
Include associated model when rendering JSON in Rails
我个人也喜欢 json:api 对象序列化标准。最大的优势之一是您可以包含关联的对象,并且这些对象可以有效地进行旁加载,这样您就不会在响应中包含重复项。我喜欢它的另一件事是它是一个 标准 ,而当我过去在应用程序中呈现 JSON 时,它通常只是开发人员在该卡上工作的任何内容认为是最好的。
jsonapi-resources
gem 流行于此:
https://github.com/cerebris/jsonapi-resources
gem 负责很多 Rails 集成并为您创建控制器和路由,但与 ActiveNode
的集成存在一些问题。我已经成功地使用了 jsonapi-serializers
gem,但是它需要你自己做更多的事情:
https://github.com/fotinakis/jsonapi-serializers
你可以看看这个 Rails 例子:
https://github.com/fotinakis/jsonapi-serializers#rails-example