Я пытаюсь отправить электронное письмо, используя гем 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
Кто-нибудь знает, что происходит?