Как мне отладить рельсы 3 самоцвета? - PullRequest
5 голосов
/ 15 февраля 2011

Я создал гем / движок на основе этого урока:

http://www.themodestrubyist.com/2010/03/05/rails-3-plugins---part-2---writing-an-engine/

Однако я получаю сообщение об ошибке при попытке использовать драгоценный камень во вновь созданном приложении.Я получаю «Ошибка маршрутизации - неопределенный метод` sub 'для nil: NilClass »при попытке доступа к приложению.

Единственное, что я вижу в файле журнала, - это та же ошибка.Нет трассировки стека / трассировки отладки, поэтому трудно определить, откуда возникла ошибка.В идеале я хотел бы увидеть трассировку стека "из драгоценного камня", но похоже, что rails не отлаживает ошибки, возникающие вне приложения?

Я использую rvm, ruby ​​1.9.2, rails 3.0.1.

Вот мой файл config / rout.rb из гема, хотя я не думаю, что это ошибка маршрутизации, как подсказывает сообщение отладки.

Rails.application.routes.draw do
    resources :pictures, :controller => 'morph/pictures'
end

Есть предложения?

Ответы [ 2 ]

15 голосов
/ 30 ноября 2011

Если вы раскомментируете

Rails.backtrace_cleaner.remove_silencers!

в config/initializers/backtrace_silencers.rb будет отображаться более полная трассировка стека. У меня это сработало.

2 голосов
/ 15 февраля 2011

Есть ли в вашей консоли обратный след?

Если вы не можете найти какой-либо дополнительный вывод, тогда вы можете поместить оператор 'debugger' где-то рядом с началом вашего приложения и пройтись по исходному кодупока ошибка не появится.

Вы можете сделать то же самое с источником gem / plugin.

Редактировать: Похоже, что автор имеет ссылку на демонстрационный код в нижней части статьи.Это также может быть полезно.

...