aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord
diff options
context:
space:
mode:
authorRyuta Kamizono <kamipo@gmail.com>2018-11-03 22:35:23 +0900
committerRyuta Kamizono <kamipo@gmail.com>2018-11-03 22:35:23 +0900
commit06ef4c3fa874f6dc166bce06d8158d9c5af78195 (patch)
tree1d1c7a0c94eb297a473ba0ea30cff943b4451675 /activerecord
parent1812240f1ac28ef8e2e399d38548255328580b52 (diff)
downloadrails-06ef4c3fa874f6dc166bce06d8158d9c5af78195.tar.gz
rails-06ef4c3fa874f6dc166bce06d8158d9c5af78195.tar.bz2
rails-06ef4c3fa874f6dc166bce06d8158d9c5af78195.zip
Don't pass useless `table_name` to `ModelMetadata.new`
The `model_metadata` is only used if `model_class` is given. If `model_class` is given, the `table_name` is always `model_class.table_name`.
Diffstat (limited to 'activerecord')
-rw-r--r--activerecord/lib/active_record/fixture_set/model_metadata.rb11
-rw-r--r--activerecord/lib/active_record/fixture_set/table_rows.rb2
-rw-r--r--activerecord/lib/active_record/fixtures.rb4
3 files changed, 4 insertions, 13 deletions
diff --git a/activerecord/lib/active_record/fixture_set/model_metadata.rb b/activerecord/lib/active_record/fixture_set/model_metadata.rb
index edc03939c8..fb23df6f45 100644
--- a/activerecord/lib/active_record/fixture_set/model_metadata.rb
+++ b/activerecord/lib/active_record/fixture_set/model_metadata.rb
@@ -3,9 +3,8 @@
module ActiveRecord
class FixtureSet
class ModelMetadata # :nodoc:
- def initialize(model_class, table_name)
+ def initialize(model_class)
@model_class = model_class
- @table_name = table_name
end
def primary_key_name
@@ -23,18 +22,12 @@ module ActiveRecord
def timestamp_column_names
@timestamp_column_names ||=
- %w(created_at created_on updated_at updated_on) & column_names
+ %w(created_at created_on updated_at updated_on) & @model_class.column_names
end
def inheritance_column_name
@inheritance_column_name ||= @model_class && @model_class.inheritance_column
end
-
- private
-
- def column_names
- @column_names ||= @model_class.connection.columns(@table_name).collect(&:name)
- end
end
end
end
diff --git a/activerecord/lib/active_record/fixture_set/table_rows.rb b/activerecord/lib/active_record/fixture_set/table_rows.rb
index 3e3c0bc7ab..8a99df29ce 100644
--- a/activerecord/lib/active_record/fixture_set/table_rows.rb
+++ b/activerecord/lib/active_record/fixture_set/table_rows.rb
@@ -58,7 +58,7 @@ module ActiveRecord
end
def model_metadata
- @model_metadata ||= ModelMetadata.new(model_class, table_name)
+ @model_metadata ||= ModelMetadata.new(model_class)
end
def resolve_sti_reflections(row)
diff --git a/activerecord/lib/active_record/fixtures.rb b/activerecord/lib/active_record/fixtures.rb
index 1dead09073..1248ed00c5 100644
--- a/activerecord/lib/active_record/fixtures.rb
+++ b/activerecord/lib/active_record/fixtures.rb
@@ -629,9 +629,7 @@ module ActiveRecord
@fixtures = read_fixture_files(path)
- @table_name = (model_class.respond_to?(:table_name) ?
- model_class.table_name :
- self.class.default_fixture_table_name(name, config))
+ @table_name = model_class&.table_name || self.class.default_fixture_table_name(name, config)
end
def [](x)