Есть ли способ смешать простой текст и HTML электронная почта на Rails? - PullRequest
1 голос
/ 11 марта 2020

Я делаю Ruby on Rails Учебное пособие https://www.learnenough.com/ruby-on-rails-6th-edition-tutorial/account_activation#sec -mailer_templates , и я сгенерировал User mailer для активации учетной записи.

Вот код:

app / views / user_mailer / account_activation.text.erb

Hi <%= @user.name %>,

Welcome to the Sample App! Click on the link below to activate your account:

<%= edit_account_activation_url(@user.activation_token, email: @user.email) %>

app / views / user_mailer / account_activation. html .erb

<h1>Sample App</h1>
<p>Hi <%= @user.name %>,</p>
<p>
Welcome to the Sample App! Click on the link below to activate your account:
</p>

<%= link_to "Activate", edit_account_activation_url(@user.activation_token,
                                                    email: @user.email) %>

Я понимаю различия между ними ("HTML - это способ кодирования веб-страниц и шаблонов электронной почты для форматирования текста и добавления изображений. Обычный текст - обычный текст с нет параметров форматирования, таких как полужирный, курсив, подчеркивание или специальные параметры макета "source: https://www.cakemail.com/blog/html-vs-plain-text/),

Но я не понимаю, почему у меня есть два файла с одинаковым встроенным Ruby код. Могу ли я смешать их в один файл?

1 Ответ

1 голос
/ 11 марта 2020

Нет, вы не можете смешать их в одном файле. Rails отобразит оба варианта шаблона .text и. html отдельно, а затем доставит их вместе в многочастном электронном письме . Клиенты, способные отображать HTML электронные письма, увидят вариант HTML, в то время как клиенты, способные только к тексту, получат текст.

Вы можете предоставить только или другой шаблон, если хотите, но если вы используете только текст , тогда вы не можете использовать HTML (очевидно), и если вы используете только HTML, тогда клиенты, неспособные к отображению HTML, будут отображать исходный код HTML в качестве сообщения, что делает его фактически нечитаемым. Если ваша электронная почта проста и не требует разметки, вы можете предоставить только шаблон .text, и все должно работать приемлемо хорошо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...