Как интегрировать premailer с Rails
Как интегрировать гем ' premailer ' с проектом Rails (3.0.7)? В настоящее время у меня есть в моем почтовом:
def welcome(user)
@user = user
mail to: user.email, subject: "Welcome"
end
Но я не могу понять, как интегрировать библиотеку. Мне нужно позвонить:
premailer = Premailer.new(html)
html = premailer.to_inline_css
Тем не менее, я не уверен, как получить доступ к содержимому моей электронной почты из действия почтовой программы.
4 ответа
Решение
Пытаться:
def premailer(message)
message.text_part.body = Premailer.new(message.text_part.body.to_s, with_html_string: true).to_plain_text
message.html_part.body = Premailer.new(message.html_part.body.to_s, with_html_string: true).to_inline_css
return message
end
def welcome(user)
@user = user
message = mail to: user.email, subject: "Welcome"
end
Взгляните на простой драгоценный камень premailer-rails, который я недавно написал. Для конвертации он использует перехватчики Rails.
Для пользователей Rails 4 вы можете: добавить гемы
gem 'premailer-rails'
gem 'nokogiri' (if you don't have it)
добавьте это в свою таблицу стилей (Haml):
%style{type:"text/css"}= Rails.application.assets.find_asset('email_stylesheet').to_s
по какой-то причине он не работал с обычным stylesheet_link_tag
Это все, что я должен был сделать. Надеюсь, это поможет!