成らぬは人の為さぬなりけり

エンジニアライフをエンジョイする為のブログ

empty?とnil?を判定するような感じのblank?

通常、Rubyプログラムで、


nilじゃなく、かつ空ではない

ことを確かめたい場合、

!obj.nil? && !obj.empty

みたいな事になるのではないかと思います。
※すいません、自分が知らないだけかもしれません。

が、しかし、
Railsアプリでは、
こーなる。

rails console
ruby-1.9.2-p290 :046 > nil.blank?
 => true
ruby-1.9.2-p290 :047 > "".blank?
 => true 
ruby-1.9.2-p290 :048 > "a".blank?
 => false 

ActiveSupportのObjectクラスの拡張により、
これが実現されているわけですが、
ありがたいメソッドです。

※実際は、empty?とnil?を評価してるわけではありませんが。