【发布时间】:2019-04-08 18:47:52
【问题描述】:
我想使用可以是数组或地图的 jsonb 存储数据。源数据以数组或映射的形式到达,我们希望在服务器上统一它,以便前端可以使用单一类型。有没有一种方法/解决方法可以让我使用、存储和检索对 jsonb postgres 类型有效的 json/map 和数组类型?
如果我在params 中得到一个数组,我在调用强制转换管道之前尝试使用source: 复制到数组类型sourced 字段:
condition: Map.has_key?(params, "value") && is_list(value)
我能够成功保存数据,但是从数据库中检索时出现转换错误
field(:value, :map)
field(:value_array, {:array, :integer}, source: :value)
注意:Ecto 版本 > 3 和 postgres 10
【问题讨论】:
标签: postgresql elixir ecto jsonb