トップ «前の日記(2014/04/22 (火) ) 最新 次の日記(2014/04/24 (木) )» 編集 RSS feed

HsbtDiary


2014/04/23 (水) [長年日記]

[rails] Rails の認証 gem で認証失敗した時に false を返すのはやめて欲しい

タイトルの通り。認証している時としていないときとで表示をわけるような処理を

current_user.try(:name)

と書くことがよくある。この時に認証していない時や失敗した時に false を返すような gem が仮にあった場合、以下のように raise してしまう。

[1] pry(main)> nil.try!(:foo)
 => nil
[2] pry(main)> false.try!(:foo)
 NoMethodError: undefined method `foo' for false:FalseClass

https://github.com/NoamB/sorcery/commit/5ab7bd4ee8750f7d594300529a1c0465b715ad4e

ほんとにやめてほしい(ちなみに上記のコミットは未リリースだ)。