モデル メソッド呼び出しを行うエレガントな方法を探しています。これが私のクエリです:
where("order_id = ?", argument).first
where() メソッドの後にチェーンされている first() メソッドのため、このクエリをスコープで使用することはできません。
そこで、次のクラス メソッドを作成しようとしました。
def self.find_order(value)
where("order_id = ?", value).first
end
コントローラー アクションでこのメソッドを 2 回使用すると、IDE から、このクエリをスコープに移動する必要があるという警告が表示されます。最初に「find」を使用せずにメソッドの名前を変更すると、コントローラに、find() または new() 以外に複数のメソッドを呼び出すべきではないという警告も表示されます (これを呼び出す別のモデル メソッドがあります)。コントローラーのアクション)。動作するので実際の問題ではないことはわかっていますが、素敵でドライなコードを書くことに興味があります。迷惑な質問ではないことを願っています。私はプログラミングに比較的慣れていないことを公正に言う必要があります。前もって感謝します!