2012-04-26 2 views
0

В моем старом приложении Ruby 1.9.2 Sinatra, запущенном на стеке Bamboo, консоль heroku предоставила оболочку, которая не только инициализировала Active Record, но также записывалась в файл истории в моем каталоге .heroku.Heroku Cedar Stack and command heroku run console

После переезда в кедр кедра Heroku и использования Ruby 1.9.3, я обнаружил, что консоль запуска heroku не загружает ни одну из моих моделей Active Record. Я исправил это, написав небольшой рубиновый скрипт для инициализации Active Record и загрузки моих моделей.

я исполню это с помощью неудобный запустить Heroku «расслоение EXEC IRB -r ./console»

This IRB консольных разжигает отлично и дает мне доступ к моим данным модели, но никакой истории не регистрируется.

1) Почему запускается консоль, запускаемая героикой? 2) Как я могу получить сеансы консоли для входа в историю?

Пожалуйста?

Благодаря

+0

Я думаю, что консоль запуска кероку была сделана в основном для приложений RoR. –

ответ

2

Добавьте следующую строку в Procfile:

console: bundle exec irb -r ./console 

Ведение истории не легко можно, как это будет раскрутить дино для каждого нового вызова (стек кедр не хранит историю для консоли Rails , или). Вы можете попробовать использовать rlwrap, чтобы сохранить историю на локальном компьютере.

+0

Интересно. Спасибо Константин, я попробую использовать Procfile. Пока все работает без него. –

0

От docs:

Вы можете использовать Heroku консоль в качестве дублера для сценария бегуна Rails ШЕРСТИ, чтобы выполнить однократное команды непосредственно из командной строки

и

Отсутствие аргумент, heroku console запускает интерактивную консоль аналогичной irb или рельсы script/console команд

run console направлен на запуске консоли Rails или irb.