Sha256: 6ba702ad8bbe942445ec09cdeae6dae3fcf80815d4cdb0ce421015915c9406c3
Contents?: true
Size: 1.11 KB
Versions: 2
Compression:
Stored size: 1.11 KB
Contents
class AddManyRolesStrategy < ActiveRecord::Migration class << self def up create_roles create_user_roles add_index :roles, :name, :unique => true insert_roles end def down drop_roles drop_user_roles remove_index :roles, :name end protected def create_user_roles create_table :<%= table_name.singularize %>_roles do |t| t.integer :<%= table_name.singularize %>_id t.integer :role_id t.timestamps end add_index :<%= table_name.singularize %>_roles, [:<%= table_name.singularize %>_id, :role_id], :unique => true end def drop_user_roles drop_table :<%= table_name.singularize %>_roles end def create_roles create_table :roles do |t| t.string :name t.timestamps end end def drop_roles drop_table :roles end def insert_roles <%- roles_to_add.each do |role| -%> begin Role.create(:name => '<%= role %>') rescue end <%- end -%> end end end
Version data entries
2 entries across 2 versions & 1 rubygems