class Page < Item field :content field :theme_id, :type => BSON::ObjectId, :default => nil belongs_to :design has_many :page_parts def create_parts page_design = self.design page_design.layout.layout_parts.each do |p| self.page_parts.create( :name => p.name, :i18n_variable_id => I18nVariable.create.id, :kind => 'text' ) if p.editable? end end # Destroy the page_parts def destroy_page_parts self.page_parts.each do |part| part.destroy_i18n_variable part.destroy end end end