active_record_schema 0.5.7 → 0.5.8

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.5.7
1
+ 0.5.8
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "active_record_schema"
8
- s.version = "0.5.7"
8
+ s.version = "0.5.8"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["mcasimir"]
@@ -4,14 +4,8 @@ module ActiveRecordSchema
4
4
  module Dsl
5
5
  extend ActiveSupport::Concern
6
6
  module ClassMethods
7
-
8
- def schema
9
- # if self.superclass != ActiveRecord::Base
10
- # table_holder = self.ancestors.find {|c| c.is_a?(Class) && c.superclass == ActiveRecord::Base}
11
- # table_holder.schema
12
- # else
13
- # end
14
-
7
+
8
+ def schema
15
9
  @active_record_schema_schema ||= ActiveRecordSchema::Schema.new(self)
16
10
 
17
11
  end # ~ schema
@@ -15,6 +15,17 @@ module ActiveRecordSchema
15
15
  @indexes = {}
16
16
  @joins = {}
17
17
  end
18
+
19
+ def hierarchy_fields
20
+ if @hierarchy_fields
21
+ @hierarchy_fields
22
+ else
23
+ @hierarchy_fields ||= ActiveSupport::OrderedHash.new
24
+ self.ancestors.select { |c| c.is_a?(Class) && c.superclass == ActiveRecord::Base }.reverse_each do |klass|
25
+ @hierarchy_fields = @hierarchy_fields.merge(klass.fields)
26
+ end
27
+ end
28
+ end
18
29
 
19
30
  def field_names
20
31
  fields.values.map(&:name).map(&:to_s)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active_record_schema
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.7
4
+ version: 0.5.8
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -86,7 +86,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
86
86
  version: '0'
87
87
  segments:
88
88
  - 0
89
- hash: -2405613424171215143
89
+ hash: 3702613398432765162
90
90
  required_rubygems_version: !ruby/object:Gem::Requirement
91
91
  none: false
92
92
  requirements: