Добрый день всем,
Я создал почтовую программу для отправки электронного письма моему клиенту. На данный момент я все еще тестирую его, но я не смог заставить его работать. Я прочитал redis, sidekiq, rails_mailer и все еще ничего. Я вижу, что почта находится в очереди интерфейса пользователя sidekiq, но я не могу получить письмо.
Вот поток моего кода.
Пользователь будет проверять текстовое поле в представлении, если он хочет отправить электронное письмо клиенту.
I метод будет запущен на контроллере. Вот мой код.
def send_workorder_message
if params.has_key?(:to_send_email)
WorkorderMessage::WorkorderMessageJob.perform_in(10.seconds, @curr_user, params[:message])
end
endv
- затем создается задание на работу. вот код.
class WorkorderMessage::WorkorderMessageJob
# include SuckerPunch::Job
include Sidekiq::Worker
sidekiq_options queue: 'mailers'
def perform(user, message)
Spree::WorkorderMailer.workorder_send_to_email(user, message).deliver_now
# ActiveRecord::Base.connection_pool.with_connection do
# end
end
end
- после этого он запустит WorkorderMailer, здесь код.
class WorkorderMailer < BaseMailer
def workorder_send_to_email(to_user, message)
ActiveRecord::Base.connection_pool.with_connection do
subject = "sample message mailer"
@message = message
@user = to_user
mail(
to: @user.email,
# 'reply-to': Spree::Store.current.support_address,
from: Spree::Store.current.support_address,
subject: subject
)
end
end
end
когда я использую программу предварительного просмотра, я вижу, что пользовательский интерфейс работает нормально.
Также я заметил, что на виде sidekiq я вижу это User
Obj. Я что нормальный?
![enter image description here](https://i.stack.imgur.com/1hfuJ.png)