=> Wed, 26 Jun 2019 23:51:24 JST +09:00
前々から欲しかったmagic trackpadを導入。 以前職場の方に借りていた時期があったのだが、その期間で完全に身体がmagic trackpad以外を受け付けなくなってしまった。大きな感動はないが、そこには安心が存在している。いい…
ーーーーーーーー
今日はdeviseやwardenの内部実装を読んだりしていた。
devise/sign_in_out.rb at master · plataformatec/devise · GitHub
def expire_data_after_sign_in! # session.keys will return an empty array if the session is not yet loaded. # This is a bug in both Rack and Rails. # A call to #empty? forces the session to be loaded. session.empty? session.keys.grep(/^devise\./).each { |k| session.delete(k) } end alias :expire_data_after_sign_out! :expire_data_after_sign_in!
この expire_data_after_sign_in!
メソッドはその名の通りログイン認証後にdeviseのセッションを破棄するメソッドなのだけど、エイリアスで expire_data_after_sign_out!
メソッドも定義している。メソッドの内容は同じでログイン/ログアウト時にそれぞれ適した命名のメソッドを呼べるので、ほーんこんな時にalias使うんかーと唸るなどした。
内部実装を読んでやりたかったことはdeviseのscopeを新しく追加し、 user
以外の別のモデルでログインするルーティングを追加したかったのだけど、そこはうまくいっていない。明日の自分に期待。