Отправить почту с почтой и erb драгоценными камнями - PullRequest
1 голос
/ 02 мая 2019

Я пытаюсь отправить электронное письмо, используя гем Mail и гем ERB, но я все время получаю эту ошибку TypeError Exception: no implicit conversion of Hash into Integer

Я прочитал документацию Mail Gem и документацию ERB, и я следовал их инструкциям, но она не работает.

Это метод, email - пункт назначения, а errors - массив, содержащий возможные ошибки, которые могли произойти (пуст, если проблем не было)

def self.send_file(email, errors)
    @errors = errors
    if errors.any?
      subject = 'There has been an error'
      template = %(
                     <html>
                     <p>Sorry, these errors occured:</p>
                     <ul>
                       <% @errors.each do |error| %>
                          <li><%= error %></li>
                       <% end %>
                     </ul>
                  </html>
                      ).gsub(/^ {2}/, '')

    else
      subject = 'Everything is okey'
      template = %(
                   <html>
                     <p> Everything it's okay! </p>
                   </html>
      ).gsub(/^ {2}/, '')
    end
    message = ERB.new(template, trim_mode: '<%>')
    @errors = errors
    mail = Mail.new do
      from ENV['NOTIFICATIONS_EMAIL']
      to email
      subject subject
      html_part do
        content_type 'text/html; charset=UTF-8'
        body message.run(binding)
      end
    end
    mail.deliver
  end

Кто-нибудь знает, что происходит?

...