User groups feature initial commit.
git-svn-id: http://redmine.rubyforge.org/svn/branches/work@1373 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
@@ -0,0 +1,11 @@
|
||||
class CreateGroups < ActiveRecord::Migration
|
||||
def self.up
|
||||
create_table :groups do |t|
|
||||
t.column :name, :string, :null => false
|
||||
end
|
||||
end
|
||||
|
||||
def self.down
|
||||
drop_table :groups
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,9 @@
|
||||
class AddUsersGroupId < ActiveRecord::Migration
|
||||
def self.up
|
||||
add_column :users, :group_id, :integer
|
||||
end
|
||||
|
||||
def self.down
|
||||
remove_column :users, :group_id
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,20 @@
|
||||
class ChangeMembersUsersAssociationToPolymorphic < ActiveRecord::Migration
|
||||
def self.up
|
||||
add_column :members, :principal_type, :string
|
||||
add_column :members, :principal_id, :integer
|
||||
add_column :members, :inherited_from, :integer
|
||||
Member.update_all "principal_type = 'User', principal_id = user_id"
|
||||
remove_column :members, :user_id
|
||||
add_index :members, [:principal_type, :principal_id], :name => :members_principal
|
||||
end
|
||||
|
||||
def self.down
|
||||
# Remove inherited memberships
|
||||
Member.delete_all "inherited_from IS NOT NULL"
|
||||
add_column :members, :user_id, :integer, :default => 0, :null => false
|
||||
Member.update_all "user_id = principal_id"
|
||||
remove_column :members, :principal_type, :string
|
||||
remove_column :members, :principal_id, :integer
|
||||
remove_column :members, :inherited_from, :integer
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user