Как отлаживать модель?

Кто-нибудь знает, как отлаживать рельсы в модели? У меня есть метод, который теперь работает, и я пытался проверить значение переменной между вводом logger.debug val_name что работа в контроллерах, но не в моделях, кто-нибудь знает, почему? Модель не наследуется от Active Record, если это может быть проблемой. Есть ли способ отладить его?

Ответы

Ответ 1

Другой способ регистрации из любого места приложения:

Rails.logger.debug "Show this message!"

Это всегда будет выводиться в файл log/development.log.

Ответ 2

Вы можете просто "помещать" внутри вызовов метода модели, и он будет выводиться. Вы можете увидеть его в журналах рельсов или на выходе консоли.

Ответ 3

так как ваша модель не является ActiveRecord, у нее нет метода регистрации в смешанном режиме

вы можете добавить его так (возможно, другие более эффективные способы сделать это)

class YourModelThatIsNotActiveRecord
    def logger
        RAILS_DEFAULT_LOGGER
    end
end

куча отличной информации здесь - http://guides.rubyonrails.org/debugging_rails_applications.html

Ответ 4

Если вы разворачиваете Mongrel, используя script/server в разработке, это может сработать:

  • установите рубиновый отладочный камень, если у вас его еще нет: gem install ruby-debug;
  • добавить require 'ruby-debug' в config/environments/development.rb;
  • поместите строку debugger в источник, где вы хотите начать сеанс отладки.

Посмотрите на это официальное руководство для получения дополнительной информации: http://guides.rubyonrails.org/debugging_rails_applications.html#debugging-with-ruby-debug