aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/migration
diff options
context:
space:
mode:
authorAleksey Magusev <lexmag@gmail.com>2012-07-11 01:38:21 +0400
committerAleksey Magusev <lexmag@gmail.com>2012-07-18 00:13:19 +0400
commit211d88b71b3df2ae161b23579a79f8e937132388 (patch)
tree531ae144bfd1e3fa8bcad17d31547d4dd4d84bb2 /activerecord/lib/active_record/migration
parentd4811702510bf289bb07ce93263cd04d49e96bea (diff)
downloadrails-211d88b71b3df2ae161b23579a79f8e937132388.tar.gz
rails-211d88b71b3df2ae161b23579a79f8e937132388.tar.bz2
rails-211d88b71b3df2ae161b23579a79f8e937132388.zip
Add join table migration generator
For instance, running rails g migration CreateMediaJoinTable artists musics:uniq will create a migration with create_join_table :artists, :musics do |t| # t.index [:artist_id, :music_id] t.index [:music_id, :artist_id], unique: true end
Diffstat (limited to 'activerecord/lib/active_record/migration')
-rw-r--r--activerecord/lib/active_record/migration/join_table.rb6
1 files changed, 2 insertions, 4 deletions
diff --git a/activerecord/lib/active_record/migration/join_table.rb b/activerecord/lib/active_record/migration/join_table.rb
index 01a580781b..e880ae97bb 100644
--- a/activerecord/lib/active_record/migration/join_table.rb
+++ b/activerecord/lib/active_record/migration/join_table.rb
@@ -4,13 +4,11 @@ module ActiveRecord
private
def find_join_table_name(table_1, table_2, options = {})
- options.delete(:table_name) { join_table_name(table_1, table_2) }
+ options.delete(:table_name) || join_table_name(table_1, table_2)
end
def join_table_name(table_1, table_2)
- tables_names = [table_1, table_2].map(&:to_s).sort
-
- tables_names.join("_").to_sym
+ [table_1, table_2].sort.join("_").to_sym
end
end
end