OSDN Git Service

6db1fc555341ab1d89b1574299b1675dfa54bb8c
[pettanr/pettanr.git] / lib / manifest / model / association / has_one.rb
1 module Manifest
2   module ModelModule
3     module AssociationModule
4       class HasOne < ManifestBase::NameValues
5         attr :model_name, :foreign_key
6         
7         def set_default
8           super
9           @values['model_name'] ||= @name
10           @values['foreign_key'] ||= @parent.model_name + '_id'
11         end
12         
13         def init
14           super
15           @model_name = @values['model_name']
16           @foreign_key = @values['foreign_key']
17         end
18         
19         def model
20           ::Manifest.item_name_to_model @model_name
21         end
22         
23         def association_name
24           @parent.association_name
25         end
26         
27       end
28       
29     end
30   end
31 end