From 03427738dfa13377bcd02c75f0807a50d6de393f Mon Sep 17 00:00:00 2001 From: Antonio Terceiro Date: Tue, 2 Feb 2010 12:10:58 -0300 Subject: [PATCH] Properly migrating permission data --- db/migrate/082_add_invite_members_permission_to_admins.rb | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/db/migrate/082_add_invite_members_permission_to_admins.rb b/db/migrate/082_add_invite_members_permission_to_admins.rb index 070855a..1d163d8 100644 --- a/db/migrate/082_add_invite_members_permission_to_admins.rb +++ b/db/migrate/082_add_invite_members_permission_to_admins.rb @@ -1,17 +1,17 @@ class AddInviteMembersPermissionToAdmins < ActiveRecord::Migration def self.up - Environment.all.each{ |env| - admin = Profile::Roles.admin(env.id) - admin.permissions += ['invite_members'] - admin.save! - } + select_all("SELECT * from roles where key = 'profile_admin'").each do |role| + permissions = (YAML.load(role['permissions']) + ['invite_members']).to_yaml + role_id = role['id'] + update("update roles set permissions = '%s' where id = %d" % [permissions, role_id]) + end end def self.down - Environment.all.each{ |env| - admin = Profile::Roles.admin(env.id) - admin.permissions -= ['invite_members'] - admin.save! - } + select_all("SELECT * from roles where key = 'profile_admin'").each do |role| + permissions = (YAML.load(role['permissions']) - ['invite_members']).to_yaml + role_id = role['id'] + update("update roles set permissions = '%s' where id = %d" % [permissions, role_id]) + end end end -- libgit2 0.21.2