Open5

rails scope からインスタンスの判定もしたい

Ohkubo KOHEIOhkubo KOHEI
class User < ActiveRecord::Base
  scope :active, -> { where(status: 'active') }
  def active?
    status == 'active'
  end
end

この2つを DRY にしたい。

Ohkubo KOHEIOhkubo KOHEI
def active?
  User.active.exists?(id:)
end

これは確実だが DB アクセスが発生する。アクセスなしで解決したい。

Ohkubo KOHEIOhkubo KOHEI

User.active から Arel かなんかの構造を取り出し、それを使ってできる気がする。