Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby Mandrill模板合并失败_Ruby_Templates_Mandrill - Fatal编程技术网

Ruby Mandrill模板合并失败

Ruby Mandrill模板合并失败,ruby,templates,mandrill,Ruby,Templates,Mandrill,我使用mandrill从我的API(ruby和mandrill API gem)发送电子邮件,比如注册确认电子邮件 我在模板中有一个合并标记,用于放置用户名: 您好*|用户名|* 非常感谢您安装此应用程序。。。 我的ruby代码如下所示: m = Mandrill::API.new ENV['MANDRILL_KEY'] template_name = "app-registration-welcome-email" template_content = [{}] message = {

我使用mandrill从我的API(ruby和mandrill API gem)发送电子邮件,比如注册确认电子邮件

我在模板中有一个合并标记,用于放置用户名:

您好*|用户名|*

非常感谢您安装此应用程序。。。

我的ruby代码如下所示:

m = Mandrill::API.new ENV['MANDRILL_KEY']
template_name = "app-registration-welcome-email"
template_content = [{}]
message = {
  :from_name=> "From Name",
  :to=>[
    {
      :email => user.email,
      :name => user.name,
    }
  ],
  :global_merge_vars => [{
    :name => "username",
    :content => user.name
  }],
  :merge_language => "mailchimp",
  :merge => true,
  :merge_vars => [{
    :rcpt => user.email,
    :vars => [{
      :name => "username",
      :content => user.name
    }],
  }],
  :track_opens => true,
}
m.messages.send_template template_name, template_content, message
不幸的是,当我收到电子邮件时,一切都很好(to、name、from…),但正文中的合并标记没有被替换,我仍然显示
*| USERNAME |*


这里缺少什么?

您只需在
:global\u merge\u vars
:merge\u vars
中设置
用户名一次

  • 如果你只发送给一个收件人,那么你发送哪一个并不重要
  • 如果有多个收件人,请使用
    :merge\u vars
尝试构建
message
,然后
将message.to_json
放入调试器中(单击“Try it”按钮)。看看这是否提供了任何线索


您还可以尝试使用“USERNAME”而不是“USERNAME”作为变量名。文档说合并变量不区分大小写,但还需要删除一个可能的不匹配项。

您使用的是哪一个gem?mandrill API有大量ruby包装器。这是mandrill api,我刚刚用这些信息更新了消息,谢谢。是的,那是因为我已经尝试了所有这些可能性。我将尝试调试器,我不知道。谢谢,我会一直给你发帖的!很高兴听到这个消息!实际的问题是什么?