0

Warteschlange gestellt ist, wie zu überprüfen, ob eine E-Mail bereits eine Warteschlange eingereiht wird, mit Im aktiven Job:Rails: Wie, wenn eine E-Mail überprüfen, bereits

ofert_approved_notifier = Notifier.ofert_approved(@ofert.user, @ofert) 
    if ofert_approved_notifier.deliver_later(wait: 1.hour) 
     puts "Email ofert_approved sent successfully" 
    else 
     puts "Email ofert_approved could not be sent" 
    end 

Wie Sie oben sehen können, Im E-Mail an @ofert.user Senden und sie ist 1 Stunde vor dem Senden verzögert, der obige Code ist in einer Controller-Aktion, ich möchte überprüfen, ob die E-Mail bereits für @ofert.user eingereiht ist, möchte ich nicht die gleiche E-Mail an den gleichen Benutzer senden, wenn es bereits in der Warteschlange ist .

Gibt es eine Möglichkeit, die ich überprüfen kann ?. Danke

Antwort

0

Delayed :: Job ist ein ActiveRecord-Objekt, so dass Sie prüfen können, ob ein Datensatz existiert.

Delayed::Job.where(...) 

Blick auf die Struktur der gespeicherten Datensätze und finden Sie heraus, wie Sie Ihre E-Mail-Arbeiter gespeichert sind und wie man sie per E-Mail zu finden. Viel Glück!