Sha256: 8bbff16c4655d5cd62a6b15d78a2a18a7f195caef884fe99a140cb4e5774773e
Contents?: true
Size: 1.58 KB
Versions: 15
Compression:
Stored size: 1.58 KB
Contents
PostgresArrays ============== This library adds ability to use PostgreSQL array types with ActiveRecord. > User.find(:all, :conditions=>['arr @> ?', [1,2,3].pg]) SELECT * FROM "users" WHERE ('arr' @> E'{"1", "2", "3"}') > User.find(:all, :conditions=>['arr @> ?', [1,2,3].pg(:integer)]) SELECT * FROM "users" WHERE (arr @> '{1,2,3}') > User.find(:all, :conditions=>['arr @> ?', [1,2,3].pg(:float)]) SELECT * FROM "users" WHERE (arr @> '{1.0,2.0,3.0}') > u = User.find(1) SELECT * FROM "users" WHERE ("users"."id" = 1) => #<User id: 1, ..., arr: [1,2]> > u.arr = [3,4] > u.save UPDATE "users" SET "db_ar" = '{3.0,4.0}' WHERE "id" = 19 > User.find(:all, :conditions=>{:arr=>[3,4].pg}) SELECT * FROM "users" WHERE ("users"."arr" = E'{"3", "4"}') > User.find(:all, :conditions=>{:arr=>[3,4].search_any(:float)}) SELECT * FROM "users" WHERE ("users"."arr" && '{3.0,4.0}') > User.find(:all, :conditions=>{:arr=>[3,4].search_all(:integer)}) SELECT * FROM "users" WHERE ("users"."arr" @> '{3,4}') > User.find(:all, :conditions=>{:arr=>[3,4].search_subarray(:safe)}) SELECT * FROM "users" WHERE ("users"."arr" <@ '{3,4}') class U < ActiveRecord::Migration def self.up create_table :users do |t| t.integer_array :int_ar end add_column :users, :fl_ar, :float_array end end Plugin worked with rails 2.3.x. integer_array works in ActiveRecord 3 at the moment. Copyright (c) 2010 Sokolov Yura aka funny_falcon, released under the MIT license
Version data entries
15 entries across 15 versions & 1 rubygems