[英]ActionMailer sending emails but with empty body
I don't know why, but e-mails sent by Rails Mailer using a Gmail account are being received with subject but with empty body... 我不知道为什么,但是Rails Mailer使用Gmail帐户发送的电子邮件正在收到主题,但是身体空洞......
Mailer: 梅勒:
class ContatoMailer < ActionMailer::Base
default from: "contato@parceirobrf.com.br"
def send_email(user_info)
@user_info = user_info
mail(
to: "contato@parceirobrf.com.br",
subject: "Contato - Parceiro BRF",
from: "Parceiro BRF",
return_path: "contato@parceirobrf.com.br",
date: Time.now,
content_type: "text/html"
)
end
end
Controller 调节器
def dispatch_email
user_info = params[:user_info]
if ContatoMailer.send_email(user_info).deliver
flash[:notice] = "Mensagem enviada."
else
flash[:notice] = "Oops. Sua mensagem não pôde ser enviada."
end
redirect_to "/contato"
end
Contact form: 联系表:
<%= form_tag dispatch_email_path, method: :post do %>
<dt>E-mail:</dt>
<dd><%= usuario_atual.email%></dd>
<%= hidden_field_tag "user_info[email]", usuario_atual.email %><br />
<dt>Nome:</dt>
<dd><%= usuario_atual.nomefantasia%></dd>
<%= hidden_field_tag "user_info[name]", usuario_atual.nomefantasia %><br />
<dt>Fone Contato:</dt>
<dd><%= usuario_atual.fone1_prop%></dd>
</dl>
<label for="lbl-txt">Mensagem:</label>
<div class="area">
<%= text_area_tag "user_info[message]", "", size: "60x10" %>
</div><!-- / area -->
<div class="btn-row">
<%= submit_tag "Enviar" , :class => 'btn'%>
</div>
<% end %>
Message Template - mensagem.html.erb 消息模板 - mensagem.html.erb
<p>Nome: <%= @user_info["name"] %></p>
<p>Email: <%= @user_info["email"] %></p>
<p>Mensagem: <%= @user_info["message"] %></p>
Thanks! 谢谢!
try add some params to mail
function: 尝试添加一些params到mail
功能:
mail(
to: "contato@parceirobrf.com.br",
subject: "Contato - Parceiro BRF",
from: "Parceiro BRF",
return_path: "contato@parceirobrf.com.br",
date: Time.now,
content_type: "text/html",
template_path: 'contato_mailer', # folder in views where are mail templates
# by default its snakifyed controller name
template_name: 'mensagem' # name of template
# by default its snakifyed action name
)
mensagem.html.erb
should be in my_app/app/views/contato_mailer/
mensagem.html.erb
应该在my_app/app/views/contato_mailer/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.