タイトルはわかりやすいと思います。
「find_for_authentication」関数を上書きして、ユーザー認証の設定モデルに参加したいと考えています。
私のモデル ユーザー has_one 設定
ユーザーモデルでこれを試しましたが、うまくいきません。
def self.find_for_authentication()
joins(:setting)
super
end
ありがとうございました
タイトルはわかりやすいと思います。
「find_for_authentication」関数を上書きして、ユーザー認証の設定モデルに参加したいと考えています。
私のモデル ユーザー has_one 設定
ユーザーモデルでこれを試しましたが、うまくいきません。
def self.find_for_authentication()
joins(:setting)
super
end
ありがとうございました
これは機能しますか?
def self.find_for_authentication()
super.joins(:setting)
end
Devise にはさまざまな異なる DB タイプへのアダプターがあるため、実際にこれを任意の SQL に変換するメソッド呼び出しチェーンのさらに下にあるため、これは実際にこれを実行したいレイヤーではありません。SQLクエリに戻るまでにfind_for_authentication
、すでに実行されているため、使用することはできません.joins
。
モデルにdefault_scope
( Rails Eager Loading on All Finds ) を設定してみることができますが、独自の問題があります。User
default_scope