aboutsummaryrefslogtreecommitdiffstats
path: root/lib/active_relation/relations/table.rb
diff options
context:
space:
mode:
authorBryan Helmkamp <bryan@brynary.com>2008-01-14 10:50:46 -0500
committerBryan Helmkamp <bryan@brynary.com>2008-01-14 10:50:46 -0500
commit553eb0ad490abc7f85d9836c3ba959ab771d3cf4 (patch)
treebaa9714465488d77980e8d252a82849b32844d3b /lib/active_relation/relations/table.rb
parent17a5fd13bc4ba8405d95e90d12b87dcd7e5bea5b (diff)
downloadrails-553eb0ad490abc7f85d9836c3ba959ab771d3cf4.tar.gz
rails-553eb0ad490abc7f85d9836c3ba959ab771d3cf4.tar.bz2
rails-553eb0ad490abc7f85d9836c3ba959ab771d3cf4.zip
Remove ActiveRelation sub-modules and refactor specs
Diffstat (limited to 'lib/active_relation/relations/table.rb')
-rw-r--r--lib/active_relation/relations/table.rb62
1 files changed, 30 insertions, 32 deletions
diff --git a/lib/active_relation/relations/table.rb b/lib/active_relation/relations/table.rb
index a370b4266d..5220087318 100644
--- a/lib/active_relation/relations/table.rb
+++ b/lib/active_relation/relations/table.rb
@@ -1,39 +1,37 @@
module ActiveRelation
- module Relations
- class Table < Base
- attr_reader :name
-
- def initialize(name)
- @name = name
- end
-
- def attributes
- attributes_by_name.values
- end
+ class Table < Relation
+ attr_reader :name
+
+ def initialize(name)
+ @name = name
+ end
+
+ def attributes
+ attributes_by_name.values
+ end
+
+ def qualify
+ Rename.new self, qualifications
+ end
- def qualify
- Rename.new self, qualifications
- end
+ protected
+ def attribute(name)
+ attributes_by_name[name.to_s]
+ end
- protected
- def attribute(name)
- attributes_by_name[name.to_s]
- end
-
- def table_sql
- "#{quote_table_name(name)}"
- end
-
- private
- def attributes_by_name
- @attributes_by_name ||= connection.columns(name, "#{name} Columns").inject({}) do |attributes_by_name, column|
- attributes_by_name.merge(column.name => Primitives::Attribute.new(self, column.name.to_sym))
- end
- end
-
- def qualifications
- attributes.zip(attributes.collect(&:qualified_name)).to_hash
+ def table_sql
+ "#{quote_table_name(name)}"
+ end
+
+ private
+ def attributes_by_name
+ @attributes_by_name ||= connection.columns(name, "#{name} Columns").inject({}) do |attributes_by_name, column|
+ attributes_by_name.merge(column.name => Attribute.new(self, column.name.to_sym))
end
end
+
+ def qualifications
+ attributes.zip(attributes.collect(&:qualified_name)).to_hash
+ end
end
end \ No newline at end of file