Peegee

Peegee aims to bring better support for PostgreSQL to ActiveRecord. Peegee is under active development.

Indexes

Peegee adds support for some indexing extensions allowed by Postgres. You can run these in your migrations.

Partial indexes

add_index :users, :column, :where => 'active = true'

Expression indexes

add_index :users, :name => 'users_created_at_date' do |i|
  i.expression 'DATE(created_at)'
end

Sorted indexes

add_index :users, :name => 'users_created_at_date' do |i|
  i.column :name, :asc
  i.column :active, :desc
end

Using CONCURRENTLY

add_index :users, :name, :name => 'users_name', :concurrently => true

Note that this cannot run inside of a transaction. This will commit your running transaction, add the index concurrently, and start a new transaction. Use with caution.

License

Peegee is distributed under the MIT license.

Copyright 2011 - Harold Giménez and Mike Burns