#ruby-on-rails #ruby-on-rails-3.1
#ruby-on-rails #ruby-on-rails-3.1
Вопрос:
Я создаю проект в rails 3.1, и у меня всегда печатается это сообщение, когда я делаю:
debug params
— !карта:ActiveSupport::HashWithIndifferentAccess
Может ли кто-нибудь объяснить это сообщение об ошибке?? и почему — !карта??
Комментарии:
1. Попробуйте выполнить puts params.inspect в действии.
Ответ №1:
Это не сообщение об ошибке. Метод debug
преобразует объект, который вы ему передаете, в YAML (способ сериализации объектов в строку, похожий на XML или JSON) и распечатывает его. Это --- !map
всего лишь часть формата YAML (см. http://yaml.org/spec/1.2/spec.html ) и ActiveSupport::HashWithIndifferentAccess
является именем класса params
.
Вместо того, чтобы использовать debug
, выполните
p params
или
puts params.inspect
Оба покажут вам более хороший результат.
Комментарии:
1. спасибо за разъяснения, я попробовал p params, но puts params.inspect ничего не показал