OSDN Git Service

fix local_manifest
[pettanr/pettanr.git] / lib / manifest / model / attribute / source / model.rb
index ac7591d..36eb6aa 100644 (file)
@@ -2,42 +2,26 @@ module Manifest
   module ModelModule
     module AttributeModule
       module SourceModule
-        class ModelSource
-          attr :attribute, :source_manifest, :type, 
-            :resource_model_name, :resource_list_name, :select_item_name, :caption_name
-          
-          def initialize attribute, source_manifest
-            @attribute = attribute
-            @source_manifest = source_manifest
-            self.set_default
-            self.init
-          end
+        class ModelSource < Base
+          attr :resource_model_name, :resource_list_name, 
+            :select_item_name, :caption_name
           
           def set_default
-            @source_manifest['args'] ||= {}
-            @source_manifest['args']['resource_model_name'] ||= (@attribute.name.gsub('_id', ''))
-            @source_manifest['args']['resource_list_name'] ||= 'select_items'
-            @source_manifest['args']['select_item_name'] ||= self.model_name + '_' + @attribute.name.gsub('_id', '') + '_items'
-            @source_manifest['args']['caption_name'] ||= 'caption'
+            super
+            @args['resource_model_name'] ||= (@parent.name.gsub('_id', ''))
+            @args['resource_list_name'] ||= 'select_items'
+            @args['select_item_name'] ||= self.model_name + '_' + @parent.name.gsub('_id', '') + '_items'
+            @args['caption_name'] ||= 'caption'
           end
           
           def init
-            @args = @source_manifest['args']
-            @type = @source_manifest['type']
+            super
             @resource_model_name = @args['resource_model_name']
             @resource_list_name = @args['resource_list_name']
             @select_item_name = @args['select_item_name']
             @caption_name = @args['caption_name']
           end
           
-          def model_name
-            @attribute.parent_name
-          end
-          
-          def attribute_name
-            @attribute.name
-          end
-          
         end
         
       end