高見龍

iOS app/Ruby/Rails Developer & Instructor, 喜愛非主流的新玩具 :)

Rails Console / irb 裡的方便工具-Hirb

方便的工具,寫起來給自己做個備忘,免得到時候忘記 :)

在做資料庫存取的時候,常會把抓到的model object印出來看看到底內容正確與否。假設我有個名叫Book的model,我從裡面隨便抓一筆資料出來大概會長這樣:

image

除此之外,也可以透過y方法把內容以YAML格式輸出:

image

其實這樣也不會多難看,反正看久就習慣了。剛好最近在看Railscasts的時候才發現原來有更方便的gem可以用,它叫做Hirb,可以讓在console模式下輸出的內容更清楚了。

官網的安裝說明其實就很清楚了,簡單的說,就是用gem一個動作就搞定了:

> sudo gem install hirb

進入rails project裡的console模式後:

>> require 'hirb'
>> Hirb.enable

接下來,剛剛那個object會變成:

image

如果再加一下logger的設定,還可以讓輸出的同時把查詢的log也秀出來:

image

當你不想用的時候,只要用:

>> Hirb.disable

就可以把它關掉了。

如果覺得hirb很方便但又不想每次進console都打這些指令的話,也可以把上面這些動作放到.irbrc裡(檔名: ~/.irbrc)

1
2
3
4
5
require 'rubygems'
require 'hirb'
require 'active_record'
Hirb.enable
ActiveRecord::Base.logger = Logger.new(STDOUT)

當然,hirb不只有這樣而已,不過光是這樣我就覺得很棒了。更細節的說明請洽網站 :)

Comments