aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord
diff options
context:
space:
mode:
authorJon McCartie <jon@mccartie.com>2015-10-22 09:11:42 -0700
committerRafael Mendonça França <rafaelmfranca@gmail.com>2015-10-23 21:34:00 -0200
commitf0323288da939f57641b82041cb1a86a1e526746 (patch)
treeaf45e828083fb8a6361889fc93b0a8b12a4a99ae /activerecord
parentf94e328cf801fd5c8055b06c4ee5439273146833 (diff)
downloadrails-f0323288da939f57641b82041cb1a86a1e526746.tar.gz
rails-f0323288da939f57641b82041cb1a86a1e526746.tar.bz2
rails-f0323288da939f57641b82041cb1a86a1e526746.zip
Move default uuid generation to active_record
Diffstat (limited to 'activerecord')
-rw-r--r--activerecord/CHANGELOG.md5
-rw-r--r--activerecord/lib/rails/generators/active_record.rb8
-rw-r--r--activerecord/lib/rails/generators/active_record/migration/templates/create_table_migration.rb2
3 files changed, 12 insertions, 3 deletions
diff --git a/activerecord/CHANGELOG.md b/activerecord/CHANGELOG.md
index e1f543c3a1..48005eee1a 100644
--- a/activerecord/CHANGELOG.md
+++ b/activerecord/CHANGELOG.md
@@ -7,8 +7,9 @@
* Add ability to default to `uuid` as primary key when generating database migrations
- Set `Rails.application.config.active_record.primary_key = :uuid`
- or `config.active_record.primary_key = :uuid` in config/application.rb
+ config.generators do |g|
+ g.orm :active_record, primary_key_type: :uuid
+ end
*Jon McCartie*
diff --git a/activerecord/lib/rails/generators/active_record.rb b/activerecord/lib/rails/generators/active_record.rb
index dc29213235..425512cc43 100644
--- a/activerecord/lib/rails/generators/active_record.rb
+++ b/activerecord/lib/rails/generators/active_record.rb
@@ -12,6 +12,14 @@ module ActiveRecord
def self.base_root
File.dirname(__FILE__)
end
+
+ private
+ def primary_key_type
+ key_type = Rails::Generators.options[:active_record][:primary_key_type]
+ ", id: :#{key_type}" if key_type
+ end
+
+
end
end
end
diff --git a/activerecord/lib/rails/generators/active_record/migration/templates/create_table_migration.rb b/activerecord/lib/rails/generators/active_record/migration/templates/create_table_migration.rb
index 4a7deb3c75..fadab2a1e6 100644
--- a/activerecord/lib/rails/generators/active_record/migration/templates/create_table_migration.rb
+++ b/activerecord/lib/rails/generators/active_record/migration/templates/create_table_migration.rb
@@ -1,6 +1,6 @@
class <%= migration_class_name %> < ActiveRecord::Migration
def change
- create_table :<%= table_name %><%= id_kind %> do |t|
+ create_table :<%= table_name %><%= primary_key_type %> do |t|
<% attributes.each do |attribute| -%>
<% if attribute.password_digest? -%>
t.string :password_digest<%= attribute.inject_options %>