Задать вопрос
@jonny_don
Изучаю Rails

Как вывести в теме и теле письма данные из переменной?

Нужно в определенном месте в тексте письма вывести данные из переменной. Тексты писем хранятся в базе. В Mailer контроллере добавил переменную @tmp. В тексте письма добавляю <%= @tmp %>, но не работает, выводит - <%= @tmp %>. Пробовал #{@tmp}, результат тот же.
  • Вопрос задан
  • 186 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
c3gdlk
@c3gdlk
Ментор в http://rubyboost.ru/
Там где шаблон письма из базы подставляется в тело письма нужно использовать ERB процессор при этом передав в него текущий контекст(binding)

@tmp = 'Some value'
email_body = ERB.new(mail_template_from_database).result(binding)

mail(to: user_email,  body: email_body,   content_type: "text/html",   subject: "Email subject")
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@malroc
Если шаблонизатор ERB, то правильный синтаксис <%= @tmp %> (забыли % перед закрывающей скобкой).
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы