2 class ElementNestableContent < Content
3 self.abstract_class = true
7 def self._element_tree_name
8 self.my_peta.element_tree_name
11 def self.load_manifest
14 n = self._element_tree_name
15 define_singleton_method("element_tree_name") do
18 c = self.child_models(self.element_tree_name)
19 define_singleton_method("element_models") do
23 define_method("element_items") do |element_model|
24 self.__send__ self.class.my_manifest.associations.child_element_name(element_model)
26 define_method("elements_items") do
27 self.class.element_models.map {|element_model|
28 self.element_items element_model
36 def post_attributes opt = {}
37 attr = self.copy_attributes
39 self.class.element_models.each do |element_model|
40 name = self.class.my_manifest.associations.child_element_name(element_model) + '_attributes'
42 self.element_items(element_model).each do |element|
43 hash[name][element.post_attribute_key] = element.post_attributes opt