3

调试时,我通常使用puts some_variable.inspect打印(转储)变量。但是,我厌倦了puts ...inspect每次打字。有没有更好的方法来打印变量?

4

2 回答 2

3

我发现了这个:http ://www.ruby-doc.org/core-2.1.3/Kernel.html#method-ip

p variableputs variable.inspect.

于 2014-10-18T16:04:38.603 回答
2

使用pry调试器

 #Gemfile
  gem 'pry-rails'

  @data = {content: 'important'}
  #instead of puts @data.inspec
  binding.pry

运行它将保留在调用 binding.pry 的行上的代码并启动 pry 终端会话。

  pry(main)> @data
  => {:content=>"important"}
   pry(main)> cd @data
   pry(#<Hash>):1> ls -m
  Enumerable#methods:
    all?            count       each_cons         entries     flat_map  map     minmax     reduce        take
    any?            cycle       each_entry        find        grep      max     minmax_by  reverse_each  take_while
    chunk           detect      each_slice        find_all    group_by  max_by  none?      slice_before  zip
    collect         drop        each_with_index   find_index  inject    min     one?       sort
    collect_concat  drop_while  each_with_object  first       lazy      min_by  partition  sort_by
于 2014-10-17T07:48:30.273 回答