「遅い」ジョブのスコープを作成する方法を見つけようとしています。
「遅い」ジョブとは、状態が :in_progress で、:due の日付が今日より古いものです。
(私は州の宝石を使用しておらず、Postgres をデータベースとして使用しています)。
これが私がこれまで行ってきたことです。私は if then ステートメントにかなり慣れていないため、この時点では基本的なスコープしか作成していません。私のモデルでこれを行う方法について何か考えはありますか?
#州
STATES = %w[bids in_progress complete canceled]
delegate :bids?, :in_progress?, :complete?, :canceled?, to: :current_state
def current_state
(events.last.try(:state) || STATES.first).inquiry
end
# スコープ
def self.late
if @current_state_jobs == :in_progress?
where('due < ?', Time.now)
else
nil
end
end
late スコープで最初の current_state スコープを使用できますか? わからない