我的生产系统正在使用Sidekiq的延迟邮件程序扩展来通过Mailgun的smtp服务器发送自动邮件。
一切都很顺利,除了有一个特定的邮件,当在其文本替代中打开时,它使用上一次部署中的视图(而html版本正确呈现)。
到目前为止,我已经多次重启了unicorn + sidekiq,我创建了一个新的提交并重新部署,同时重写整个视图以防万一,但没有任何作用。
生产服务器正在使用unicorn,sidekiq连接到同一台机器上的redis实例,而actionmailer正在使用Mailgun SMTP。邮件方法如下:
def new_shipment_added(shipment_id, user_id)
@shipment = Shipment.find(shipment_id)
@user = User.find(user_id)
return false if @shipment.nil? or @user.nil?
rcpts = Array.new
@user.email_addresses.each { |addrObj| rcpts << addrObj.address}
m = mail(to: rcpts, subject: t("subject_line_with_title", title: "#{@shipment.pickup.compact_address} - #{@shipment.delivery.compact_address}"))
end
我包含上下文的方法,但我认为它不会导致问题,因为html模板正确呈现。
问题的底线是:可能导致问题的原因是什么? ..以及sidekiq如何使用旧模板,因为它只能在以前的版本中找到?