Обновление до rails 3.1 прерывает производственный режим при использовании passenger & cache_classes = true - PullRequest
1 голос
/ 17 октября 2011

Народ,

У меня серьезные проблемы при попытке перенести мое приложение с рельсов 3 на рельсы 3.1. Я следовал инструкциям, переместил свои активы, обновил гемы и перенастроил свои конфиги.

Первое, на что я наткнулся, было то, что

нет такого файла или каталога app / config / environment

ошибка, о которой сообщали разные люди. К сожалению, общее решение просто изменить владельца среды .rb кому-то еще, кроме root, похоже, не применимо в моем случае.

Путем просмотра каталогов моих приложений я обнаружил, откуда на самом деле пришло сообщение об ошибке, а именно app / test / test_helper.rb, который я переместил из каталога rails 3, имеет следующую неправильно сгенерированную строку:

требуется File.expand_path ('../../ config / environment', FILE )

который я изменил на

require File.expand_path ('../../../ config / environment', FILE )

поэтому сообщение об ошибке исчезло. Это заставило меня уже занервничать, потому что, черт возьми, этот файл test_helper.rb вообще интерпретируется при попытке запустить его в рабочем режиме? На данный момент мне не нужно тестировать, поэтому я просто переместил (т.е. переименовал) весь каталог app / test. Хорошо сейчас? Нет, совсем нет, появляется новое сообщение об ошибке

Прервать тестирование: ваша среда Rails работает в рабочем режиме!

WTF? RailsEnv в пассажирском (3.0.9) наверняка это производство. Когда я изменяю config.cache_classes на false, все работает отлично!

Я понятия не имею, где искать, это сообщение об ошибке, которое я вставил выше, похоже, еще не обсуждалось.

Есть подсказки?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...