【问题标题】:Velocity / Marketo issue with if statements that include a space包含空格的 if 语句的 Velocity / Marketo 问题
【发布时间】:2015-11-18 03:28:39
【问题描述】:

我正在编写一些 Velocity 脚本作为 Marketo 电子邮件模板的一部分,该模板要求我检查是否设置了潜在客户的布尔属性。

当我尝试在我的系统中显示与潜在客户相关的内容时,我可以执行以下操作;

{{lead.myName}}

这也适用于其中包含空格的字段;

{{lead.my name}}

当涉及到将该字段用于#setting 或#ifing 某些内容时,它就不能正常工作了。

#if($lead.my name) 抛出一个错误,指出发现了意外的空间。

我尝试过#if(${lead.my name}) 之类的变体,但无济于事。

任何帮助/指针都会非常有帮助。

实际用例

在我的示例中,我需要访问的字段称为lead.Subscribed to Innovation (L) 1,我认为括号不会导致问题,当然任何错误消息都与空格有关。

【问题讨论】:

    标签: velocity marketo


    【解决方案1】:

    根据User Guide变量不能有空格

    VTL 标识符必须以字母字符(a .. z 或 A .. Z)开头。其余字符仅限于以下几种字符:

        alphabetic (a .. z, A .. Z)
        numeric (0 .. 9)
        hyphen ("-")
        underscore ("_")
    

    即使有大括号: 这是有效的:

     #set( ${myemail} = "email@email.com" )
    

    虽然 trhis 无效:

    #set( ${my email} = "email@email.com" )
    

    我最好的猜测是更改源系统以符合速度命名约定。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-19
      • 2011-11-24
      相关资源
      最近更新 更多