2

Я использую rvm с ruby ​​1.9.3, rails 3.1, gems i18n и i18n-active_record и mysql. В поставщика/плагинов/18N-active_record/i18n-БД-backend.rb У меняI18n и i18n-active_record - нет I18n :: Backend :: класс ActiveRecord?

module I18n 
    module Backend 
    class Database < ActiveRecord 
    ... 

Команды рельсы сервера, рельсы консоли или даже грабли БД: версия с ошибкой:

/vendor/plugins/i18n_database_backend/lib/i18n_database_backend.rb:3:in `<module:Backend>': wrong argument type Module (expected Class) (TypeError) 

Похоже, приложение пытается использовать модуль ActiveRecord вместо I18n :: Backend :: ActiveRecord (http://rubydoc.info/docs/rails/2.3.8/I18n/Backend/ActiveRecord). Что может быть причиной такого поведения? Разумеется, установлен Gem i18n, и была запущена установка пакета команд.

ответ

2

Try явно требуется класс в коде выше ваше определение модуля, как это:

require 'i18n/backend/active_record' 

И убедитесь, что у вас есть i18n-active_record камень в вашем Gemfile.

+0

Спасибо! Теперь это работает. – zachar