Ich verwende verzögerte Jobs in meiner Rails 5-Anwendung.Entfernen Sie alle verzögerten Jobs für ein bestimmtes Objekt in Rails 5
Zum Beispiel habe ich einen Trip Modell und bin die Schaffung von zwei verzögerten Jobs:
Trip.delay(run_at: ...).send_reminder
Trip.delay(run_at: ...).get_feedback
Also habe ich zwei verzögerte Arbeitsplätze.
Jetzt wenn die Reise gelöscht wird möchte ich auch die verzögerten Aufträge löschen und, noch wichtiger, wenn die Reise geändert wird, möchte ich die Aufträge aktualisieren (neue run_at Zeit), also würde ich löschen und neu erstellen die Jobs.
Aber wie kann ich die Jobs identifizieren, die zu der Reise gehören? Gibt es irgendeine Methode dafür? Ich habe versucht, eine Spalte trip_id hinzuzufügen, weiß aber nicht, wie die trip_id beim Erstellen des neuen Jobs zugewiesen werden soll.
Diese Seite Details hinzufügen zusätzliche Spalten und eine Zuordnung zu der Tabelle delayed_jobs: https: // Sunil kumarn.wordpress.com/2013/05/19/delayed-jobs-in-rails-adding-custom-attributes/ – Unixmonkey