“Postmark::InvalidMessageError:提供电子邮件 TextBody 或 HtmlBody 或两者。”对于 rails 3.2 应用程序

Posted

技术标签:

【中文标题】“Postmark::InvalidMessageError:提供电子邮件 TextBody 或 HtmlBody 或两者。”对于 rails 3.2 应用程序【英文标题】:"Postmark::InvalidMessageError: Provide either email TextBody or HtmlBody or both." for a rails 3.2 app 【发布时间】:2012-08-07 10:12:14 【问题描述】:

我正在阅读 Postmark 文档,在那里看到了 rails gem (github link)。

我按照说明进行了设置,但在尝试发送电子邮件时遇到了此消息:

Provide either email TextBody or htmlBody or both.

我的邮件中有这样的电子邮件设置:

mail(
  :to       => user.email,
  :subject  => "Thanks for signing up",
  :from     => "me@domain.com",
  "HtmlBody" => "<b>Hello</b>",
  "TextBody" => "Hello"
)

如果您需要更多信息,请告诉我。我不确定这对于以前看到此错误的人来说是否足够详细。

【问题讨论】:

我也看到了这一点,无论我使用的是 Devise 还是为测试目的而设置的自定义邮件。这似乎是一条包罗万象的错误消息,并没有真正告诉您原因。 【参考方案1】:

错误命名的电子邮件视图

我遇到了同样的事情,这是由于我对与电子邮件相关的视图的命名错误。

例子

_user_first_logs_in.html.erb  # Was incorrectly using this.

user_first_logs_in.html.erb   # Should be using this.

在本地对此进行测试的一个好方法是使用我们值得信赖的 37signals 男孩提供的 mail_view gem,它允许您预览开发中的电子邮件。看看吧。

这应该会暴露很多基本问题。

日本

【讨论】:

以上是关于“Postmark::InvalidMessageError:提供电子邮件 TextBody 或 HtmlBody 或两者。”对于 rails 3.2 应用程序的主要内容,如果未能解决你的问题,请参考以下文章