diff --git a/db/migrate/20140717110124_delete_events_without_user.rb b/db/migrate/20140717110124_delete_events_without_user.rb new file mode 100644 index 00000000..44f0fa68 --- /dev/null +++ b/db/migrate/20140717110124_delete_events_without_user.rb @@ -0,0 +1,16 @@ +class DeleteEventsWithoutUser < ActiveRecord::Migration + + def up + # User deletion without all the proper dependent: :destroy options might have left + # Events without a submitter (event_user association is deleted, but Event itslef is not) + Event.all.each do |event| + if event.users.blank? + event.destroy + end + end + end + + def down + raise ActiveRecord::IrreversibleMigration, 'Cannot reverse migration. Events deleted cannot be re-created' + end +end