Problemas al ejecutar rake db:migrate

33 views
Skip to first unread message

Glendis Arias

unread,
Mar 5, 2019, 10:16:02 AM3/5/19
to ror-es
Hola

Estoy trabajando en un proyecto nuevo con Ruby on Rails. Aplique (rake db:setup) para iniciar mi aplicación (GenieACS) y me indica que tengo migraciones pendientes.

Database 'db/development.sqlite3' already exists
Database 'db/test.sqlite3' already exists
You have 6 pending migrations:
  20160202145722 CreateUsers
  20160211140635 CreatePermissions
  20160211142120 CreateRoles
  20160212123229 CreateUserRoles
  20160218145427 AddRoleIdToPermission
  20160219094206 RenamePermissionsToPrivileges
Run `rails db:migrate` to update your database then try again.
[root@genieacs-rhel genieacs-gui]# rails db:migrate
rails aborted!
 
He intentado realizar la migración ( rails db:migrate, rake db:migrate) pero ocurre el siguiente error: 

rake aborted!
NoMethodError: undefined method `Migration' for ActiveRecord:Module
/opt/genieacs-gui/db/migrate/20160202145722_create_users.rb:1:in `<top (required)>'
/usr/local/rvm/gems/ruby-2.3.1/gems/activesupport-5.2.1/lib/active_support/dependencies.rb:287:in `require'
/usr/local/rvm/gems/ruby-2.3.1/gems/activesupport-5.2.1/lib/active_support/dependencies.rb:287:in `block in require'
/usr/local/rvm/gems/ruby-2.3.1/gems/activesupport-5.2.1/lib/active_support/dependencies.rb:253:in `load_dependency'
/usr/local/rvm/gems/ruby-2.3.1/gems/activesupport-5.2.1/lib/active_support/dependencies.rb:287:in `require'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:986:in `load_migration'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:982:in `migration'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:977:in `disable_ddl_transaction'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:1350:in `use_transaction?'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:1297:in `rescue in execute_migration_in_transaction'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:1286:in `execute_migration_in_transaction'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:1263:in `block in migrate_without_lock'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:1262:in `each'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:1262:in `migrate_without_lock'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:1212:in `migrate'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:1036:in `up'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:1011:in `migrate'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/tasks/database_tasks.rb:172:in `migrate'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/railties/databases.rake:60:in `block (2 levels) in <top (required)>'
/usr/local/rvm/gems/ruby-2.3.1/gems/rake-12.3.1/exe/rake:27:in `<top (required)>'
/usr/local/rvm/gems/ruby-2.3.1/bin/ruby_executable_hooks:15:in `eval'
/usr/local/rvm/gems/ruby-2.3.1/bin/ruby_executable_hooks:15:in `<main>'

Caused by:
NoMethodError: undefined method `Migration' for ActiveRecord:Module
/opt/genieacs-gui/db/migrate/20160202145722_create_users.rb:1:in `<top (required)>'
/usr/local/rvm/gems/ruby-2.3.1/gems/activesupport-5.2.1/lib/active_support/dependencies.rb:287:in `require'
/usr/local/rvm/gems/ruby-2.3.1/gems/activesupport-5.2.1/lib/active_support/dependencies.rb:287:in `block in require'
/usr/local/rvm/gems/ruby-2.3.1/gems/activesupport-5.2.1/lib/active_support/dependencies.rb:253:in `load_dependency'
/usr/local/rvm/gems/ruby-2.3.1/gems/activesupport-5.2.1/lib/active_support/dependencies.rb:287:in `require'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:986:in `load_migration'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:982:in `migration'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:977:in `disable_ddl_transaction'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:1350:in `use_transaction?'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:1342:in `ddl_transaction'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:1291:in `execute_migration_in_transaction'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:1263:in `block in migrate_without_lock'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:1262:in `each'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:1262:in `migrate_without_lock'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:1212:in `migrate'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:1036:in `up'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/migration.rb:1011:in `migrate'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/tasks/database_tasks.rb:172:in `migrate'
/usr/local/rvm/gems/ruby-2.3.1/gems/activerecord-5.2.1/lib/active_record/railties/databases.rake:60:in `block (2 levels) in <top (required)>'
/usr/local/rvm/gems/ruby-2.3.1/gems/rake-12.3.1/exe/rake:27:in `<top (required)>'
/usr/local/rvm/gems/ruby-2.3.1/bin/ruby_executable_hooks:15:in `eval'
/usr/local/rvm/gems/ruby-2.3.1/bin/ruby_executable_hooks:15:in `<main>'
Tasks: TOP => db:migrate
(See full trace by running task with --trace)

Revise los archivos de migración y no identifico cual es el problema. Estoy trabajando con (Ruby 2.3.1  y Rails 5.2.1). Este es uno de los archivos: 20160202145722_create_users.rb  donde modifique de forma manual la versión [5.2]

class CreateUsers < ActiveRecord::Migration [ 5.2 ]
  def change
    create_table :users do |t|
      t.string :username
      t.string :password

      t.timestamps
    end
  end
end

Lei en un foro los siguiente y lo intente ejecuta, pero sigo con el problema: 

# rake db: reset
# rm -f db/*.sqlite3
# rake db:create
# RAILS_ENV=development rake db:migrate
# rails s -e development


Por favor si me pueden ayudar, no se cual es el problema.....


Carlos Sánchez Pérez

unread,
Mar 5, 2019, 10:20:04 AM3/5/19
to ror...@googlegroups.com
Hola,

¿has probado a no dejar espacio entre ActiveRecord::Migration [ 5.2 ] ?

--
--
You received this message because you are subscribed to the Google
Groups "ror-es" group.
To post to this group, send email to ror...@googlegroups.com
To unsubscribe from this group, send email to
ror_es+un...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/ror_es?hl=en
Rails no escala.

---
You received this message because you are subscribed to the Google Groups "ror-es" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ror_es+un...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


--
Un cordial saludo
Carlos Sánchez Pérez

TwitterCarlos Sánchez Pérez 
BlogMis Ideas
Móvil609 25 97 30

Matias Mascazzini

unread,
Mar 5, 2019, 11:08:22 AM3/5/19
to ror...@googlegroups.com
en vez de rake, probale con la palabra 'rails'

$ rails db:migrate

En caso de poder borrar la base de datos sin problemas, yo ejecutaría:
$ rails db:drop
$ rails db:create
$ rails db:migrate



Saludos
Matías Mascazzini
keep in touch about.me/matiasmasca

---
Le recomiendo visitar: www.ComunidadTIC.org


Reply all
Reply to author
Forward
0 new messages