Ruby on Rails

Ruby on Railsにおけるtryの記法について

tryはnilでない場合にのみオブジェクトのメソッドを呼び出したい時に使います。もし、オブジェクトがnilの場合にはnilを返すので、`NoMethodError`などでのエラーを防ぎたいシーンで使われる場合が多いです。

もし、tryメソッドを使わない場合は以下のように書くことになります。

tryメソッドの使い方

user.try(:name) #=> nil

json型の場合

例えば`User`の`name`カラムに以下のようなデータがあったとします。
その際に、そもそも`name`がNULLである場合やキーが存在しない場合にも`nil`で取得したい場合に`try`が使えます。

{ "ja": "田中", "en": "Tanaka" }
user.try(:name).try(:[], 'en') #=> 'Tanaka'
user.try(:name).try(:[], 'cn') #=> nil

strftimeを使う場合

user.try(:strftime, :actioned_at)