When I want to debug the following hash, it returns try2test2.

dictionary = {
  "test" => 2,
  "try" => 2
}

puts dictionary
# => try2test2

Are there any other ways to do it so that it will give you the full list like {'test': 2, 'try': 2}?

有帮助吗?

解决方案

As V. Melnychuk mentioned, JSON is a good option, just remember to import the "json" module first:

require "json"
dictionary.to_json

in general, you can retreive a readable string version of an object by calling inspect on it:

dictionary.inspect

finally, there is a "pp" module to pretty-print variable (pretty much like the pprint module in python):

require "pp"
pp dictionary

Hope it helps !

其他提示

Try to convert object to JSON

dictionary.to_json

You could also do p dictionary which sends inspect by default:

dictionary = {
  "test" => 2,
  "try" => 2
}

p dictionary      # => {"test"=>2, "try"=>2}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top