OSDN Git Service

t30350#:fix destroy
[pettanr/pettanr.git] / app / models / user.rb
index 90958af..54ee43d 100644 (file)
@@ -19,4 +19,20 @@ class User < ActiveRecord::Base
     self.save
   end
   
+  def destroy
+    res = false
+    User.transaction do
+      self.author.comics.each do |comic|
+        raise ActiveRecord::Rollback unless comic.destroy_with_story
+      end
+      self.author.panels.each do |panel|
+        raise ActiveRecord::Rollback unless panel.destroy_with_elements
+      end
+      raise ActiveRecord::Rollback unless self.author.destroy
+      raise ActiveRecord::Rollback unless self.destroy
+      res = true
+    end
+    res
+  end
+  
 end