可能重複:
Is there a clean way to avoid calling a method on nil in a nested params hash?測試紅寶石多維散列
是否有一個簡單的方法來檢查,如果在一多維散列值,而沒有設置醒目的NoMethodException?
例:
do_x if cat['level1']['level2']['level3'] != 'value'
的問題是,「(第二級)」可能根本不存在,因此接收爲零。
在PHP中,你可以在前面加一個'@'來抑制錯誤。
在Ruby中,我將不得不將檢查包裹在開始救援塊中。
是否有像PHP一樣的快速解決方案?
多重複:http://stackoverflow.com/q/5429790/188031 – tokland