22.Ruby|presence
フロントから空文字が入ってくるけど、モデルでnilしか受け付けないバリデーションをかけている。
イレギュラーな空文字が入ってくることでエラーが発生するというケースに遭遇。
しかし空文字判定・nil代入をわざわざ条件式を書いて実装したくない…。
そんな時に重宝したのがpresence関数。
[1] pry(main)> ''.presence => nil [2] pry(main)> 100.presence => 100
値が入っていればそのまま・空文字など値が入ってない時はデフォルトでnilが返ってくる。
このようなふるい分けをスマートに行なってくれる。
なお純粋なRubyでは使用できず、Rails(Active Support)でしか使用できない点は注意。