如何通过Sequel检索存储在Postgresql中的数组作为数组?

问题描述

我有一个ruby脚本,一个postgres数据库,并且使用Sequel gem连接到数据库。

我想存储和检索记录,其中某些列值是数组(设置为text[]作为数据类型)。因此,我加载了续集的pg_array扩展名。

我创建了一个哈希{id: 1,key1: Sequel.pg_array(["lorem ipsum","caesar","quidquid id est,timeo danaos"])}

我可以通过table.insert hash插入哈希,它会创建正确的记录。

 id |                          key1                          
----+--------------------------------------------------------
 1  | {"lorem ipsum",caesar,timeo danaos"}

基于这个良好的结果,我推断databasesequel gempg_array扩展名都已正确设置。

但是,当我再次使用sequel通过advisers.where(id: 1).all检索记录时,我得到了

[{:id => 1,:key1 => "{\"lorem ipsum\",\"quidquid id est,timeo danaos\"}"}]

:key1的值返回为String。我无法写文档的正面或反面。有没有人有办法直接将其转换为以["lorem ipsum",timeo danaos"]开头的数组?

非常感谢新手

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)