-
Notifications
You must be signed in to change notification settings - Fork 564
Using GUID's As Primary Keys
Ken Collins edited this page Jan 28, 2015
·
4 revisions
The latest 4.1 and 4.2 adapters have built in support for Rails UUID support.*
Since this commit, we fully support GUID as primary keys. It is easy to get back GUID's for existing records as your identity columns. However, you will have to setup a few model callbacks if you want to set the identity when a record is being created. In this example below the [guid_field] is the GUID column type. We are setting it to be the #id column and when new records are created, setting the string ID.
class SqlServerEdgeSchema < ActiveRecord::Base
set_primary_key :guid_field
before_create :set_guid_column
protected
def set_guid_column
self[:guid_field] ||= connection.newid_function
end
end