Аргументы не передаются из почтовой программы в файл html .erb - PullRequest
1 голос
/ 23 января 2020

Я определил этот почтовый сервис, как показано ниже. Проблема, с которой я здесь сталкиваюсь, заключается в том, что значения полей появляются в напоминании. 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 %>
...