是否可以使用Elixir的Absinthe插件和Neo4J

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了是否可以使用Elixir的Absinthe插件和Neo4J相关的知识,希望对你有一定的参考价值。

我知道可以将Elixir与Neo4J一起使用,有使用螺栓包装的工作示例。但是,这不使用Absthine,也不会使用GraphQL。如果您说拥有Postgres DB或任何更传统的数据库,是否可以使用相同的模式文件?

query do
 @desc "Get an item by ID"
 field :item, :item do

  @desc "The ID of the item"
  arg :id, type: :id

  resolve fn %{id: id}, _ ->
   {:ok, Map.get(@fake_db, id)}
 end
end

这是传统数据库的典型模式文件,无论是SQL还是非SQL,您是否可以使用类似的模式使用Neo4J?或者你是否必须使用此Git Repo https://github.com/florinpatrascu/bolt_sips中的方法在没有GraphQL的情况下实现它?

答案

我没有Neo4j的经验,但没有什么可以阻止你使用你选择的数据存储与苦艾酒。模式定义与数据库无关,但显然您编写的解析器需要运行Neo4j查询。

作为旁注,访问关系数据库通常通过absinthe_ecto包使用ecto进行处理。然而,这只是围绕苦艾酒的配料功能的便利包装。没有Ecto,你可以直接使用absinthe batching

以上是关于是否可以使用Elixir的Absinthe插件和Neo4J的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Absinthe GraphQL 请求中接受 JSON

混合 Elixir 和 Erlang?

在 Elixir 中传递和使用命名函数?

Elixir - 简单插件示例在每个请求上两次调用调用方法

使用 Erlang 的 Elixir 模块失败

Absinthe Graphql 嵌套查询安全性