2021-05-17から1日間の記事一覧

【Rails】sorcery - require_login

内容 Ruby on Rails のgem 'sorcery'の ライブラリーメソッドrequire_loginについて ソースコード追跡 def require_login return if logged_in? # ① ログインしている場合は処理中止(Guard節) if Config.save_return_to_url && request.get? && !request.x…

【Ruby】return if によるガード節

内容 Ruby, Ruby on Railsで使われる return if について 経緯 Module: Sorcery::Controller::InstanceMethods#require_loginで return ifが使われており、調べてみたのでメモ・備忘録として return ifはガード節 ガード(Guard)節とは、不要な処理は予め判定…

【Rails】devise - パスワードなしでアカウント情報編集できるようにカスタマイズ

内容 Ruby on Railsのgem 'devise'について deviseの登録・認証を使用するモデルレコードのカラムデータの更新を パスワードなしでできるようにカスタマイズする方法 前提 前提① : Userモデルレコードにdeviseの登録・認証機能を使用 $ rails g devise User …

【Rails】devise - deviseのデフォルト設定(リソース更新時にパスワードが必要)

内容 devise本家では deviseの登録・認証を使用するモデルレコードのカラム更新にはパスワードを必要としています。 これをdevise本家のソースコードから追ってみます。 ソースコード追跡 Devise::RegistrationsController#update アカウント更新時に発火す…

【Ruby】deleteメソッドの注意

内容 Rubyのdeleteメソッドについて deleteメソッドの使用対象のクラスの型によって 定義上、返り値が変わってしまうことに注意です。 deleteメソッドは色々なクラスに対して定義されている ・String#delete (Ruby 3.0.0 リファレンスマニュアル) ・Array#de…