remove rails how gema ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-4 rolify

ruby-on-rails - rails - rolify remove role



Las tablas de Rolify no se crean (2)

Es un error conocido con rolify ; la migración se crea sin la extensión .rb por lo que el rake db:migrate .rb no lo recoge.

Cambie el nombre de su migración manualmente para agregar la extensión .rb. Cambio:

db/migrate/20140425070708_rolify_create_roles

ser:

db/migrate/20140425070708_rolify_create_roles.rb

Y luego rake db:migrate nuevo.

Después de instalar la gema (gema ''rolify''), he generado el archivo usando el siguiente comando:

rails g rolify Role User

Debajo de los archivos creados,

invoke active_record create app/models/role.rb invoke rspec create spec/models/role_spec.rb invoke factory_girl create spec/factories/roles.rb insert app/models/role.rb create db/migrate/20140425070708_rolify_create_roles insert app/models/user.rb create config/initializers/rolify.rb

Entonces, di

rake db:migrate

Me está dando la advertencia,

[WARN] table ''Role'' doesn''t exist. Did you run the migration ? Ignoring rolify config.

Además, las tablas no se crean. ¿Cuál es el problema? ¿Me falta algo aquí? Este es mi archivo de migración

class RolifyCreateRoles < ActiveRecord::Migration def change create_table(:roles) do |t| t.string :name t.references :resource, :polymorphic => true t.timestamps end create_table(:users_roles, :id => false) do |t| t.references :user t.references :role end add_index(:roles, :name) add_index(:roles, [ :name, :resource_type, :resource_id ]) add_index(:users_roles, [ :user_id, :role_id ]) end end

Mis versiones

Rails - 4.1.0 Ruby - 2.1.1

Por favor, alguien me ayude en esto ...

Gracias por adelantado.


Tuve el mismo problema con Rails 5.2.5 y Rolify 5.0.0 y con Devise 3.5.3

ActiveRecord::StatementInvalid: Mysql2::Error: Table ''papi_development.roles'' doesn''t exist: SELECT `roles`.* FROM `roles`

Lo arreglé comentando mi línea Devise en el modelo de Usuario antes de ejecutar el comando rake db: migrate.

class User < ActiveRecord::Base ... # devise :database_authenticatable, :registerable, :recoverable, :rememberable, :trackable, :validatable ... end

Después de la migración exitosa, no comenté la línea de diseño y todo pareció funcionar bien a partir de ese momento.