繁体   English   中英

Ruby on Rails ActionMailer 未发送 email 且未抛出错误

[英]Ruby on Rails ActionMailer not sending email and not throwing error

操作完成后,我的 ActionMailer 似乎停止发送电子邮件。 在工作人员完成时,我也没有看到 Sidekiq 或 Rails 控制台中出现任何错误。

class OfferImportWorker
  include Sidekiq::Worker
  include ActionView::Helpers::NumberHelper

  def perform(filename, user_email, current_user_id, original_filename)
    csv_file = csv_file(filename)

    num_imported_offers, errors = process_csv(csv_file, current_user_id, original_filename)
    WorkerMailer.offer_import_finished(user_email, num_imported_offers, errors).deliver!
  end
  ...
end

我的工人邮件 class

class WorkerMailer < ApplicationMailer
  default from: 'email@email.com'

  def offer_import_finished(user_email, num_imported_offers, errors)
    @num_imported_offers = num_imported_offers
    @errors = errors
    mail(to: user_email, subject: 'CSV offers import has finished')
  end
end

发展.rb

  config.action_mailer.delivery_method = :letter_opener
  config.action_mailer.perform_caching = false

我试过deliver! deliver_nowdeliver_now! 他们似乎都没有产生不同的结果。 关于我如何尝试为什么 email 没有触发的任何线索? 部分工作人员正在为用户打开新选项卡中的邮件模板 + 发送 email 但我没有看到正在采取的第二个操作。 每当我完成 csv 上传时,我都会在 rails 控制台中看到Unpermitted parameters: :authenticity_token, :csv_file 这会阻止它发送 email 吗?

要查看可能发生的情况,我会将其配置为引发错误:

config.action_mailer.raise_delivery_errors = true

https://guides.rubyonrails.org/action_mailer_basics.html#action-mailer-configuration

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM