ActiveRecord:: SubclassNotFound - программирование
Подтвердить что ты не робот

ActiveRecord:: SubclassNotFound

Я пытаюсь обновить redmine от 1.3.0 до 2.0.0, но у меня проблемы с миграцией базы данных. Когда я запускаю команду:

rake db:migrate RAILS_ENV=production

отображается ошибка типа

rake aborted!
uninitialized constant RAILS_ENV

Мой журнал ошибок:

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'

Вот список плагина, который я использую в своем старом redmine:

  • Плагин Google Apps

  • Плагин Redmine Code Review

  • Плагин Redmine Hudson

Пожалуйста, помогите мне

4b9b3361

Ответ 1

Если кто-то еще спотыкается здесь, есть два способа исправить проблему

Ответ 2

Ошибка наследования одной таблицы, вероятно, вызвана столбцом с именем type в вашей базе данных.

Если рельсы встречаются с именем столбца под названием type, он предполагает, что это модель, которая имеет подклассы, поэтому тип распознает, какую модель использовать. Я предполагаю, что какой-то плагин, который изначально не был создан для рельсов, использует в нем столбец type, и это приводит к сбою Rails.