我需要找到一个支持PostgreSQL的Array列数据类型的Ruby ORM(Active Record,Sequel等)。哪个Ruby ORM支持PostgreSQL的阵列数据类型?
http://www.postgresql.org/docs/8.2/interactive/arrays.html
任何提示吗?
我需要找到一个支持PostgreSQL的Array列数据类型的Ruby ORM(Active Record,Sequel等)。哪个Ruby ORM支持PostgreSQL的阵列数据类型?
http://www.postgresql.org/docs/8.2/interactive/arrays.html
任何提示吗?
续集的sql_subscript
仅用于在查询时访问值,正如您在之前的评论中所述。
续集对此数据库阵列没有特别的支持。您可以在CREATE_TABLE块创建数组:
DB.create_table do
column :numbers, 'integer[]'
end
但是,这并不是特别支持,因为续集刚好路过式通过。在构建查询时,没有内置的支持来获取ruby数组并将其转换为PostgreSQL数组,并且也不支持在检索时将PostgreSQL数组转换为ruby数组(它将作为字符串返回)。
也就是说,Sequel的设置使得PostgreSQL的数组和hstore类型的扩展可以相对容易地实现。有人一直在致力于支持hstore(我认为它已经完成或接近它,但我还没有审查过),并且对阵列的支持应该与此类似。未来版本的Sequel很可能会在默认情况下提供这种支持,或者以官方扩展的形式提供。
续集支持通过符号(和其他)上的sql_subscript
方法。
支持最初是通过版本0.4.3(2007年12月)通过Symbol#|
和Symbol#/
添加的,但更改为在版本2.12.0(2009年4月)中使用新方法。搜索CHANGELOG以获得更多随时间推移而发生的改进提及。
现在应该更新答案,我认为:http://www.ruby-forum.com/topic/3984710;) – Electro 2012-10-17 13:57:55