From 2d6b70b97f8028caf3bdf7f81093f87ba380e854 Mon Sep 17 00:00:00 2001 From: Fu Matthew Date: Thu, 27 Dec 2012 15:50:05 +0800 Subject: [PATCH] regenerate pageparts --- app/models/page.rb | 5 +++-- lib/tasks/migrate.rake | 7 +++++++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/app/models/page.rb b/app/models/page.rb index eb2ba7992..d6563e1ab 100644 --- a/app/models/page.rb +++ b/app/models/page.rb @@ -28,7 +28,7 @@ class Page < Item before_save :create_parts, if: Proc.new { |page| page.new_record? || page.design_id_changed? } after_save :generate_html - protected +# protected def create_parts @@ -38,7 +38,8 @@ class Page < Item page_design.layout.layout_parts.each do |layout_part| current_part = self.page_parts.detect{|page_part| page_part.name.eql?(layout_part.name)} current_part = self.page_parts.build(:name => layout_part.name) unless current_part - if current_part.name.eql?(menu_part.name) && menu_part + + if menu_part && current_part.name.eql?(menu_part.name) if current_part.new_record? current_part.kind = menu_part.kind current_part.public_r_tag = menu_part.public_r_tag diff --git a/lib/tasks/migrate.rake b/lib/tasks/migrate.rake index da07e20ad..03de17e52 100644 --- a/lib/tasks/migrate.rake +++ b/lib/tasks/migrate.rake @@ -312,4 +312,11 @@ namespace :migrate do end end + task :recreate_page_parts => :environment do + Page.all.each do |page| + page.create_parts + page.save + end + end + end