OSDN Git Service

manifest list_group tree
authoryasushiito <yas@pen-chan.jp>
Wed, 26 Feb 2014 02:49:32 +0000 (11:49 +0900)
committeryasushiito <yas@pen-chan.jp>
Wed, 26 Feb 2014 02:49:32 +0000 (11:49 +0900)
app/assets/javascripts/manifest/work/list_groups.js.coffee.erb
lib/manifest/list_group/list/base.rb
lib/manifest/list_group/list/includes/auto.rb
lib/manifest/model.rb
public/manifest.json

index e011230..485364d 100644 (file)
@@ -54,6 +54,7 @@
     },\r
   },\r
   story_sheet: {\r
+    tree_name: 'owner'\r
     lists: {\r
       public: {\r
       },\r
@@ -82,6 +83,7 @@
     },\r
   },\r
   sheet_panel: {\r
+    tree_name: 'owner'\r
     lists: {\r
       public: {\r
       },\r
     },\r
   },\r
   panel_picture: {\r
+    tree_name: 'owner'\r
     lists: {\r
       public: {\r
       },\r
     },\r
   },\r
   speech_balloon: {\r
+    tree_name: 'owner'\r
     lists: {\r
       public: {\r
       },\r
     },\r
   },\r
   speech: {\r
+    tree_name: 'owner'\r
     lists: {\r
       public: {\r
       },\r
     },\r
   },\r
   balloon: {\r
+    tree_name: 'owner'\r
     lists: {\r
       public: {\r
       },\r
     },\r
   },\r
   ground_picture: {\r
+    tree_name: 'owner'\r
     lists: {\r
       public: {\r
       },\r
     },\r
   },\r
   ground_color: {\r
+    tree_name: 'owner'\r
     lists: {\r
       public: {\r
       },\r
index 2441c3b..9053bdf 100644 (file)
@@ -15,7 +15,7 @@ module Manifest
         
         attr :list_group, :list_name, :list_manifest, 
           :model, :model_manifest, :model_list_manifest, 
-          :where, :includes
+          :where, :includes, :tree_name
         def initialize list_group, list_name, list_manifest
           @list_group = list_group
           @list_name = list_name
@@ -36,6 +36,7 @@ module Manifest
           @table_name = @model.table_name
           @where = WhereFactory.factory self, @list_manifest['where']
           @includes = IncludeFactory.factory self, @list_manifest['includes']
+          @tree_name = @list_manifest['tree_name']
         end
         
         def item_name
index ad7e7b3..e61dd32 100644 (file)
@@ -6,18 +6,20 @@ module Manifest
           attr :tree_name
           def set_default
             super
-            @includes_manifest['args']['tree_name'] ||= 'owner'
+            @includes_manifest['args']['tree_name'] ||= @list.tree_name
           end
           
           def init
             super
             @tree_name = @args['tree_name']
-            @parent_model_manifest = @list.model_manifest.tree_model_manifest(@tree_name)
-            if @parent_model_manifest
-              @parent_model_name = @parent_model_manifest.classify.item_name
-              @root_model_manifest = @parent_model_manifest.tree_model_manifest(@tree_name)
-              if @root_model_manifest
-                @root_model_name = @root_model_manifest.classify.item_name
+            if @tree_name
+              @parent_model_manifest = @list.model_manifest.tree_model_manifest(@tree_name)
+              if @parent_model_manifest
+                @parent_model_name = @parent_model_manifest.classify.item_name
+                @root_model_manifest = @parent_model_manifest.tree_model_manifest(@tree_name)
+                if @root_model_manifest
+                  @root_model_name = @root_model_manifest.classify.item_name
+                end
               end
             end
           end
index 6c76ea4..a18ead8 100644 (file)
@@ -1,6 +1,7 @@
 require_dependency "manifest/model/attribute"
 require_dependency "manifest/model/association"
 require_dependency "manifest/model/list"
+require_dependency "manifest/model/tree"
 
 module Manifest
   class Model
index a3505c5..0b7096b 100644 (file)
         }\r
       },\r
       "story_sheet": {\r
+        "tree_name": "owner",\r
         "lists": {\r
           "public": {},\r
           "private": {},\r
         }\r
       },\r
       "sheet_panel": {\r
+        "tree_name": "owner",\r
         "lists": {\r
           "public": {},\r
           "private": {},\r
         }\r
       },\r
       "panel_picture": {\r
+        "tree_name": "owner",\r
         "lists": {\r
           "public": {},\r
           "private": {},\r
         }\r
       },\r
       "speech_balloon": {\r
+        "tree_name": "owner",\r
         "lists": {\r
           "public": {},\r
           "private": {},\r
         }\r
       },\r
       "speech": {\r
+        "tree_name": "owner",\r
         "lists": {\r
           "public": {},\r
           "by_speech_balloon": {},\r
         }\r
       },\r
       "balloon": {\r
+        "tree_name": "owner",\r
         "lists": {\r
           "public": {},\r
           "by_speech_balloon": {}\r
         }\r
       },\r
       "ground_picture": {\r
+        "tree_name": "owner",\r
         "lists": {\r
           "public": {},\r
           "private": {},\r
         }\r
       },\r
       "ground_color": {\r
+        "tree_name": "owner",\r
         "lists": {\r
           "public": {},\r
           "private": {},\r