Я определил этот почтовый сервис, как показано ниже. Проблема, с которой я здесь сталкиваюсь, заключается в том, что значения полей появляются в напоминании. html .erb файл только в том случае, если , если расход.expense_url.present? , этот случай верен. расход_урл - это поле, в котором хранится местоположение файла. Любая идея, где я иду не так?
Эта проблема возникает только на промежуточном сервере. Localhost печатает электронную почту, даже если вложение отсутствует.
mailer.rb
require 'open-uri'
class ReminderMailer < ApplicationMailer
default from: 'abc@yahoo.com', to: ['sid@yahoo.com']
def reminder(expense_ids)
@expenses = Expense.where(id: expense_ids)
@expenses.each do |expense|
expense_number = expense.description.split(' ')[1]
if expense.expense_url.present?
file = open("#{expense.expense_url}").read
attachments["Expense#{expense.issue.name}_#{expense_number}_#{expense.date.to_date}.pdf"] = file
end
end
mail subject: "Reminder"
end
end
напоминание. html .erb
<% @expenses.each do |expense|%>
Expense No.: <%= expense.description.split(' ')[1] %>
<br />
Current expense total: <%= expense.value %>
<% end %>