logger.debug ["This is", "an", "Array"] Rails - PullRequest
4 голосов
/ 04 марта 2011

Почему мой вывод

logger.debug ["This is", "an", "Array"]

Это isanArray

, а не что-то вроде ["This is", "an", "Array"]

IsЕсть ли способ сделать это?(Я знаю, что мог бы сделать to_yaml, но это слишком многословно для меня)

Какие есть варианты для хорошего чистого вывода массива, похожего на print_r в php?

Ответы [ 3 ]

4 голосов
/ 04 марта 2011

Попробуйте это:

logger.debug ["This is", "an", "Array"].inspect

Это также работает для всех других типов объектов: хэшей, классов и т. Д.

1 голос
/ 04 марта 2011

Вы можете попробовать метод .inspect ....

logger.debug array.inspect

Я согласен с Эндрю, что в этом нет ничего плохого ...

puts YAML::dump(object)
0 голосов
/ 04 марта 2011

Когда вы это сделаете, to_s автоматически вызывается для массива, и это как выводить.

Вызов to_yaml отнюдь не многословен. Вы также можете посмотреть на использование join или inspect.

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