Я искал все и не могу найти никого с такой же проблемой.
Я тестирую обновление большого приложения Rails под управлением Rails 2.3.8 с Ruby 1.9.2 с использованием rvm и nginx + passenger (в настоящее время работает на 1.8.7 в производстве).
Я использую гем mysql2, а в моей базе данных используется кодировка UTF-8.
Когда я вхожу в приложение (стандартный restful-auth), просмотр базы данных находит совпадение, но когда контроллер пытается сохранить изменение атрибута в модели User, он вызывает ошибку проверки из validates_length_of.
Я добавил отладочную информацию в ActiveRecord, и похоже, что все строковые значения моей записи в базе данных пусты (отображаются в журнале как «[]» ...)
Я видел такое же поведение в script / console: User.first.login => "[]", но это было исправлено после переключения на гем mysql2 (и обновления значения адаптера database.yml).
Почему консоль будет работать, но не через веб-сайт? Ошибка ActionController / ActiveSupport ??
Уточнение: это стабильное приложение, которое существует в течение 1+ лет в версии 1.8.7 с сотнями спецификаций.