OSDN Git Service

manifest view profiler
[pettanr/pettanr.git] / lib / manifest / model / association / belongs_to.rb
1 module Manifest
2   module ModelModule
3     module AssociationModule
4       class BelongsTo
5         attr :association, :belongs_to_name, :belongs_to_manifest, 
6           :id_column, :model_name
7         def initialize association, belongs_to_name, belongs_to_manifest
8           @association = association
9           @belongs_to_name = belongs_to_name
10           @belongs_to_manifest = belongs_to_manifest
11           self.set_default
12           self.init
13         end
14         
15         def set_default
16           @belongs_to_manifest['model_name'] ||= @belongs_to_name
17           @belongs_to_manifest['id_column'] ||= @belongs_to_name + '_id' 
18         end
19         
20         def init
21           @model_name = @belongs_to_manifest['model_name']
22           @id_column = @belongs_to_manifest['id_column']
23         end
24         
25         def model
26           ::Manifest.item_name_to_model @model_name
27         end
28         
29         def association_name
30           @association.association_name
31         end
32         
33       end
34       
35     end
36   end
37 end