I am willing to give up the common denominator in database
compatibility and dive into using some PostgreSQL specific types.  In
particular, I need bigint (int8) id columns and 'cidr' data type.

I know I can fake it with a string, but I really want to be able to
use the cidr type's features.  We're not talking about a small
database here; it will likely be huge.

I managed to get a schema created using this:

class CreateProbes < ActiveRecord::Migration
  def self.up
    create_table :probes do |t|
      t.column "target", :cidr
      t.binary :flags
      t.string :status, :limit => 1, :default => 'A'
      t.timestamps
    end
  end

  def self.down
    drop_table :probes
  end
end

which does SOME of it.  However, db/schema.db contains:

ActiveRecord::Schema.define(:version => 20090121052017) do

  create_table "probes", :force => true do |t|
    t.string   "target",     :limit => nil
    t.binary   "flags"
    t.string   "status",     :limit => 1
    t.datetime "created_at"
    t.datetime "updated_at"
  end

end

which is NOT what I wanted.  This makes all my "rake test" tests fail.

I looked into part of activerecord, and man is it tricky.  Trying to
get this to work means major changes all over the place from what I
can see.  There aren't any database-specific hooks in place to allow
adding custom types without a lot of monkey patching.

Has anyone already done all this work by chance?

Thanks,
--Michael

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to