【ターミナル】irbとpryの違い

備忘録です。

#irbとpry

irbは元々コンピュータに備わっている対話シェルで
rails cでコンソールとして使うことができる。

pryはirbの進化版のようなイメージで
gemfileにgem 'pry-rails'を追加してbundleすることで
rails cコマンドを実行したときに使うことができる。

#irb
連なって表示

```terminal
irb(main):002:0> Prefecture.all
=> #<ActiveHash::Relation:0x00007f97fef5c7e0 @klass=Prefecture, @all_records=[#<Prefecture:0x00007f97fef3e060 @attributes={:id=>0, :name=>"--"}>, #<Prefecture:0x00007f97fef3dd90 @attributes={:id=>1, :name=>"北海道"}>, #<Prefecture:0x00007f97fef3da98 @attributes={:id=>2, :name=>"青森県"}>, #<Prefecture:0x00007f97fef3d7a0 @attributes={:id=>3, :name=>"岩手県"}>, #<Prefecture:0x00007f97fef3d4d0 @attributes={:id=>4, :name=>"宮城県"}>, #<Prefecture:0x00007f97fef3d228 @attributes={:id=>5, :name=>"秋田県"}>, #<Prefecture:0x00007f97fef3cf30 @attributes={:id=>6, :name=>"山形県"}>, #<Prefecture:0x00007f97fef3cc88 @attributes={:id=>7, :name=>"福島県"}>, #<Prefecture:0x00007f97fef3c968 @attributes={:id=>8, :name=>"茨城県"}>, #<Prefecture:0x00007f97fef3c288 @attributes={:id=>9, :name=>"栃木県"}>, #<Prefecture:0x00007f97fef3c940 @attributes={:id=>10, :name=>"群馬県"}>, #<Prefecture:0x00007f97fef6fcf0 @attributes={:id=>11, :name=>"埼玉県"}>, #<Prefecture:0x00007f97fef6f908 @attributes={:id=>12, :name=>"千葉県"}>, #<Prefecture:0x00007f97fef6f5e8 @attributes={:id=>13, :name=>"東京都"}>, #<Prefecture:0x00007f97fef6f278 @attributes={:id=>14, :name=>"神奈川県"}>, #<Prefecture:0x00007f97fef6eee0 @attributes={:id=>15, :name=>"新潟県"}>, #<Prefecture:0x00007f97fef6eaa8 @attributes={:id=>16, :name=>"富山県"}>, #<Prefecture:0x00007f97fef6e828 @attributes={:id=>17, :name=>"石川県"}>, #<Prefecture:0x00007f97fef6e558 @attributes={:id=>18, :name=>"福井県"}>, #<Prefecture:0x00007f97fef6e288 @attributes={:id=>19, :name=>"山梨県"}>, #<Prefecture:0x00007f97fef6df68 @attributes={:id=>20, :name=>"長野県"}>, #<Prefecture:0x00007f97fef6dc48 @attributes={:id=>21, :name=>"岐阜県"}>, #<Prefecture:0x00007f97fef6d978 @attributes={:id=>22, :name=>"静岡県"}>, #<Prefecture:0x00007f97fef6d6a8 @attributes={:id=>23, :name=>"愛知県"}>, #<Prefecture:0x00007f97fef6d388 @attributes={:id=>24, :name=>"三重県"}>, #<Prefecture:0x00007f97fef6d068 @attributes={:id=>25, :name=>"滋賀県"}>, #<Prefecture:0x00007f97fef6cd98 @attributes={:id=>26, :name=>"京都府"}>, #<Prefecture:0x00007f97fef6cac8 @attributes={:id=>27, :name=>"大阪府"}>, #<Prefecture:0x00007f97fef6c780 @attributes={:id=>28, :name=>"兵庫県"}>, #<Prefecture:0x00007f97fef6c320 @attributes={:id=>29, :name=>"奈良県"}>, #<Prefecture:0x00007f97fef5ff30 @attributes={:id=>30, :name=>"和歌山県"}>, #<Prefecture:0x00007f97fef5fc60 @attributes={:id=>31, :name=>"鳥取県"}>, #<Prefecture:0x00007f97fef5f940 @attributes={:id=>32, :name=>"島根県"}>, #<Prefecture:0x00007f97fef5f670 @attributes={:id=>33, :name=>"岡山県"}>, #<Prefecture:0x00007f97fef5f3a0 @attributes={:id=>34, :name=>"広島県"}>, #<Prefecture:0x00007f97fef5f030 @attributes={:id=>35, :name=>"山口県"}>, #<Prefecture:0x00007f97fef5ed60 @attributes={:id=>36, :name=>"徳島県"}>, #<Prefecture:0x00007f97fef5ea90 @attributes={:id=>37, :name=>"香川県"}>, #<Prefecture:0x00007f97fef5e7c0 @attributes={:id=>38, :name=>"愛媛県"}>, #<Prefecture:0x00007f97fef5e400 @attributes={:id=>39, :name=>"高知県"}>, #<Prefecture:0x00007f97fef5e180 @attributes={:id=>40, :name=>"福岡県"}>, #<Prefecture:0x00007f97fef5deb0 @attributes={:id=>41, :name=>"佐賀県"}>, #<Prefecture:0x00007f97fef5dc30 @attributes={:id=>42, :name=>"長崎県"}>, #<Prefecture:0x00007f97fef5d820 @attributes={:id=>43, :name=>"熊本県"}>, #<Prefecture:0x00007f97fef5d5a0 @attributes={:id=>44, :name=>"大分県"}>, #<Prefecture:0x00007f97fef5d2d0 @attributes={:id=>45, :name=>"宮崎県"}>, #<Prefecture:0x00007f97fef5d050 @attributes={:id=>46, :name=>"鹿児島県"}>, #<Prefecture:0x00007f97fef5cc90 @attributes={:id=>47, :name=>"沖縄県"}>], @query_hash={}, @records_dirty=false>

```

#pry

id(name)ごとに改行されて表示

```terminal
[1] pry(main)> Prefecture.all
=> #<ActiveHash::Relation:0x00007fd444e9e448
 @all_records=
  [#<Prefecture:0x00007fd4444dfb28 @attributes={:id=>0, :name=>"--"}>,
   #<Prefecture:0x00007fd4444df600 @attributes={:id=>1, :name=>"北海道"}>,
   #<Prefecture:0x00007fd4444de8e0 @attributes={:id=>2, :name=>"青森県"}>,
   #<Prefecture:0x00007fd4444ddf30 @attributes={:id=>3, :name=>"岩手県"}>,
   #<Prefecture:0x00007fd4444dda08 @attributes={:id=>4, :name=>"宮城県"}>,
   #<Prefecture:0x00007fd4444dd3f0 @attributes={:id=>5, :name=>"秋田県"}>,
   #<Prefecture:0x00007fd4444dcbd0 @attributes={:id=>6, :name=>"山形県"}>,
   #<Prefecture:0x00007fd447c16240 @attributes={:id=>7, :name=>"福島県"}>,
   #<Prefecture:0x00007fd447c151d8 @attributes={:id=>8, :name=>"茨城県"}>,
   #<Prefecture:0x00007fd447c14698 @attributes={:id=>9, :name=>"栃木県"}>,
   #<Prefecture:0x00007fd447c14210 @attributes={:id=>10, :name=>"群馬県"}>,
   #<Prefecture:0x00007fd44834fde0 @attributes={:id=>11, :name=>"埼玉県"}>,
   #<Prefecture:0x00007fd448356fc8 @attributes={:id=>12, :name=>"千葉県"}>,
   #<Prefecture:0x00007fd4483548b8 @attributes={:id=>13, :name=>"東京都"}>,
   #<Prefecture:0x00007fd44835e660 @attributes={:id=>14, :name=>"神奈川県"}>,
   #<Prefecture:0x00007fd44835dd28 @attributes={:id=>15, :name=>"新潟県"}>,
   #<Prefecture:0x00007fd447c1e3f0 @attributes={:id=>16, :name=>"富山県"}>,
   #<Prefecture:0x00007fd447c1e0a8 @attributes={:id=>17, :name=>"石川県"}>,
   #<Prefecture:0x00007fd4483667c0 @attributes={:id=>18, :name=>"福井県"}>,
   #<Prefecture:0x00007fd448366220 @attributes={:id=>19, :name=>"山梨県"}>,
   #<Prefecture:0x00007fd448365de8 @attributes={:id=>20, :name=>"長野県"}>,
   #<Prefecture:0x00007fd448365820 @attributes={:id=>21, :name=>"岐阜県"}>,
   #<Prefecture:0x00007fd448365460 @attributes={:id=>22, :name=>"静岡県"}>,
   #<Prefecture:0x00007fd448364fd8 @attributes={:id=>23, :name=>"愛知県"}>,
   #<Prefecture:0x00007fd448364880 @attributes={:id=>24, :name=>"三重県"}>,
   #<Prefecture:0x00007fd4483641c8 @attributes={:id=>25, :name=>"滋賀県"}>,
   #<Prefecture:0x00007fd44836fe10 @attributes={:id=>26, :name=>"京都府"}>,
   #<Prefecture:0x00007fd44836f910 @attributes={:id=>27, :name=>"大阪府"}>,
   #<Prefecture:0x00007fd44836ee20 @attributes={:id=>28, :name=>"兵庫県"}>,
   #<Prefecture:0x00007fd44836e880 @attributes={:id=>29, :name=>"奈良県"}>,
   #<Prefecture:0x00007fd44836dc78 @attributes={:id=>30, :name=>"和歌山県"}>,
   #<Prefecture:0x00007fd44836d890 @attributes={:id=>31, :name=>"鳥取県"}>,
   #<Prefecture:0x00007fd44836d2c8 @attributes={:id=>32, :name=>"島根県"}>,
   #<Prefecture:0x00007fd44836caa8 @attributes={:id=>33, :name=>"岡山県"}>,
   #<Prefecture:0x00007fd44836c440 @attributes={:id=>34, :name=>"広島県"}>,
   #<Prefecture:0x00007fd4444e7e18 @attributes={:id=>35, :name=>"山口県"}>,
   #<Prefecture:0x00007fd4444e7788 @attributes={:id=>36, :name=>"徳島県"}>,
   #<Prefecture:0x00007fd4444e6fb8 @attributes={:id=>37, :name=>"香川県"}>,
   #<Prefecture:0x00007fd4444e68b0 @attributes={:id=>38, :name=>"愛媛県"}>,
   #<Prefecture:0x00007fd4444e6220 @attributes={:id=>39, :name=>"高知県"}>,
```

今回irb（デフォルト状態）で実行したため、active_hashで都道府県を出力しようとした時に、横に連なって表示されてしまったが、pry-railsを使えるようにしたことで、id(name)ごとに改行されて表示することができた。