UUIDs in Rails3
- by Rob Wilkerson
I'm trying to setup my first Rails3 project and, early on, I'm running into problems with either uuidtools, my UUIDHelper or perhaps callbacks.  I'm obviously trying to use UUIDs and (I think) I've set things up as described in Ariejan de Vroom's article. I've tried using the UUID as a primary key and also as simply a supplemental field, but it seems like the UUIDHelper is never being called.
I've read many mentions of callbacks and/or helpers changing in Rails3, but I can't find any specifics that would tell me how to adjust. Here's my setup as it stands at this moment (there have been a few iterations):
# migration
class CreateImages < ActiveRecord::Migration
  def self.up
    create_table :images do |t|
      t.string :uuid, :limit  => 36
      t.string :title
      t.text :description
      t.timestamps
    end
  end
  ...
end
# lib/uuid_helper.rb
require 'rubygems'
require 'uuidtools'
module UUIDHelper
  def before_create()
    self.uuid = UUID.timestamp_create.to_s
  end
end
# models/image.rb
class Image < ActiveRecord::Base
  include UUIDHelper
  ...
end
Any insight would be much appreciated.
Thanks.