尝试从Mandrill发送电子邮件时出现html或handlebars编码问题

时间:2017-06-15 23:51:19

标签: html html5 handlebars.js html-email mandrill

我想使用mandrill作为邮件发送提供程序,看起来它支持带有handlebars.js模板语法的模板。并且在最简单的情况下它工作正常并且需要发送电子邮件,所以类似的东西发送确定:

<body>
<p>{{EmailBody}}</p>
</body>

但是,当我尝试在页面上添加链接并使用某个值填充其地址时,由于某些编码问题,所有内容都会被破坏。

所以,我想要这样的东西:

<body>
    <a href="{{Address}}">Link</a>
</body> 

但不是正确解析它,而是将转换代码保存为:

<body>
    <a href="%7B%7BAddress%7D%7D">Link</a>
</body>

当然不起作用。我也尝试使用单引号而不是双引号,但在保存模板时,它仍然会将其更改为双引号并再次编码{{}}符号。

那么,我怎么能解决这个问题?

1 个答案:

答案 0 :(得分:0)

我建议尝试两件事:

  1. 通过在Mandrill之外进行编译来检查“地址”是否存在。它可能在数组中,或者如果作为部分引用,可能需要声明为{{> Address}}

  2. 确保在Mandrill中选择Handlebars作为合并语言,如此处底部所述 - Read more about handling javascript in Rails