ruby on rails - ActiveRecord::SubclassNotFound
ruby-on-rails redmine (2)
El error de herencia de una sola tabla probablemente se deba a una columna llamada type
en su base de datos.
Si los rieles encuentran un nombre de columna llamado type
se supone que es un modelo que tiene subclases, por lo que el tipo discrimina qué modelo usar. Supongo que un complemento que no se creó originalmente para los rieles utiliza una columna de type
en su modelo y que hace que falle.
Estoy intentando actualizar mi redmine de 1.3.0 a 2.0.0, pero tengo problemas con la migración de la base de datos. Cuando ejecuto el comando:
rake db:migrate RAILS_ENV=production
muestra un error como
rake aborted!
uninitialized constant RAILS_ENV
Mi registro de errores es:
ActiveRecord::SubclassNotFound (The single-table inheritance mechanism failed to locate the subclass: ''GoogleAppsAuthSource''. This error is raised because the column ''type'' is reserved for storing the class in case of inheritance. Please rename this column if you didn''t intend it to be used for storing the inheritance class or overwrite AuthSource.inheritance_column to use another column for that information.):
app/models/user.rb:139:in `try_to_login''
app/controllers/account_controller.rb:143:in `password_authentication''
app/controllers/account_controller.rb:138:in `authenticate_user''
app/controllers/account_controller.rb:30:in `login''
Aquí está la lista de complementos que estoy usando en mi antiguo redmine:
Complemento de Google Apps
Complemento de revisión de código de Redmine
Redmine Hudson plugin
por favor, ayúdame
Si alguien más tropieza aquí, hay dos formas de solucionar el problema.
- No use una columna llamada tipo.
Establecer manualmente el nombre de la columna a algo sin sentido:
self.inheritance_column = :_type_disabled
Consulte: http://apidock.com/rails/ActiveRecord/Base/inheritance_column/class