Ich versuche, eine Methode in meinem Mailer einzurichten, um die E-Mail nach zwei Wochen zuzustellen. Ich habe Probleme, die erstellte E-Mail aus der Datenbank zu ziehen und in "mail (to: ...)" zu schreiben ... Ich kann E-Mails senden, wenn ich sie von der Konsole aus anfordere.Ruby ActionMailer. Senden an neue E-Mail
Das Ziel ist also, jedes Mal, wenn ein neuer Standort hinzugefügt wird, wird nach 14 Tagen eine E-Mail an die angegebene E-Mail-Adresse gesendet. Hier ist meine App/Mailer.
class NotificationMailer < ApplicationMailer
default from: "[email protected]"
def reminder(email)
@email = email
mail(to: @place.email,
subject: "Reminder: your box is going to be picked up in fourteen days")
end
end
MY MODEL
class Place < ApplicationRecord
belongs_to :user
after_create :send_alert_email
geocoded_by :address
after_validation :geocode
validates :name, presence: true
validates :name, length: {minimum: 3,
too_short: " %{count} or more characters are required."}
validates :address, presence: true
validates :phone, length: { is: 10}
def send_alert_email
NotificationMailer.reminder(self).deliver(wait: 1.hour)
end
end
Danke Jungs für die Hilfe.
verwenden, können Sie die Wartezeit auf 'NotificationMailer' der Einstellung 14 Tage versucht haben? –
Hey! Ich wollte nur stundenlang rechnen. Ich denke, dass ich mein Problem herausgefunden habe, als ich die E-Mail aus der Datenbank herausholte, nachdem ein neuer Ort eingereicht wurde. –