diff --git a/app/controllers/admin_controller.rb b/app/controllers/admin_controller.rb index ccb3c43f..feadf9f4 100644 --- a/app/controllers/admin_controller.rb +++ b/app/controllers/admin_controller.rb @@ -112,7 +112,6 @@ class AdminController < ApplicationController def delete_web return unless is_post if wiki.authenticate(params['system_password_delete_web']) - @web.remove_pages(@web.select_all) wiki.delete_web(@web_name) flash[:info] = "Web \"#{@web_name}\" has been deleted." redirect_to :controller => 'wiki', :action => 'web_list' diff --git a/app/models/page.rb b/app/models/page.rb index 26d4223e..809015a0 100644 --- a/app/models/page.rb +++ b/app/models/page.rb @@ -1,6 +1,6 @@ class Page < ActiveRecord::Base belongs_to :web - has_many :revisions, :order => 'id' + has_many :revisions, :order => 'id', :dependent => :destroy has_many :wiki_references, :order => 'referenced_name' has_one :current_revision, :class_name => 'Revision', :order => 'id DESC' diff --git a/app/models/web.rb b/app/models/web.rb index 1e1d5585..4afe8e98 100644 --- a/app/models/web.rb +++ b/app/models/web.rb @@ -1,6 +1,6 @@ class Web < ActiveRecord::Base - has_many :pages - has_many :wiki_files + has_many :pages, :dependent => :destroy + has_many :wiki_files, :dependent => :destroy def wiki Wiki.new