У меня есть проект Rails 2.3.5, который использует функции локализации Rails. У меня также есть установленная Rails 3 бета (которая зависит от жемчуга i18n). Rails 2.3.5 с радостью справится с локализацией (без установки i18n), однако, если i18n gem доступен, он использует его.
Недавно я обновил свои драгоценные камни и теперь имею версию 0.3.7 и 0.4.0 из i18n. Rails, конечно же, хочет загрузить и использовать последнюю версию, которая вызывает ошибки в моем проекте. Я попытался установить версию gem на 0.3.7, которая обходит ошибки в веб-приложении. Однако мы используем resque и resque_mailer для задержки отправки сообщений. Когда рабочий выбирает задание почтовой программы из очереди, он игнорирует мое требование config.gem в environment.rb и в любом случае использует версию 0.4.0.
В идеале я хотел бы сказать, что Rails просто не использовал жемчужину i18n. Как это сделать?
Обновление: Начиная с бета-версии 4, Rails 3 теперь требует i18n версии 0.4.1. Я не вижу, как больше людей не сталкиваются с этой проблемой, как казалось бы сейчас, если у вас установлены Rails 2 и Rails 3, вы столкнетесь с этим.