Use*_*159 11 debugging logging ruby-on-rails pretty-print
我正在使用Rails.logger.debug打印变量进行调试.问题是它以不可读的格式打印哈希(无法区分键和值).例如,我将以下行添加到我的代码库中
#code_base.rb
my_hash = {'a' => 'alligator', 'b'=>'baboon'}
Rails.logger.debug my_hash
Run Code Online (Sandbox Code Playgroud)
然后我启动我的rails应用程序并输入
tail -f log/development.log
Run Code Online (Sandbox Code Playgroud)
但是当my_hash被打印出来时,它看起来像
bbaboonaalligator
Run Code Online (Sandbox Code Playgroud)
密钥和值被压缩,无法解析.你们知道我应该怎么做才能解决这个问题吗?
Use*_*159 16
没关系,我找到了自己问题的答案.我需要用
my_hash = {'a' => 'alligator', 'b'=>'baboon'}
Rails.logger.debug "#{my_hash.inspect}"
Run Code Online (Sandbox Code Playgroud)
然后,它看起来像
{"b"=>"baboon", "a"=>"aligator"}
Run Code Online (Sandbox Code Playgroud)
LpL*_*ich 10
当你使用to_yamleg 时,它更容易阅读:
logger.debug my_hash.to_yaml
这是一种易于阅读的多行格式.该inspect方法只是喷出一个字符串.
| 归档时间: |
|
| 查看次数: |
11913 次 |
| 最近记录: |