包含 space 的 if 语句的 Velocity / Marketo 问题
Velocity / Marketo issue with if statements that include a space
我正在编写一些 Velocity 脚本作为 Marketo 电子邮件模板的一部分,它要求我检查是否设置了潜在客户的布尔属性。
当我尝试在我的系统中显示与潜在客户相关的内容时,我可以做类似的事情;
{{lead.myName}}
这也适用于其中包含 space 的字段;
{{lead.my name}}
当涉及到将该字段用于 #set
ting 或 #if
ing 某些内容时,它也不起作用。
#if($lead.my name)
抛出一个错误,指出发现了意外的 space。
我试过 #if(${lead.my name})
之类的变体,但无济于事。
任何帮助/指点都会非常有用。
实际用例
在我的示例中,我需要访问的字段称为 lead.Subscribed to Innovation (L) 1
,我认为括号不会导致问题,当然任何错误消息都与 space 相关。
根据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" )
我最好的猜测是更改源系统以符合速度命名约定。
我正在编写一些 Velocity 脚本作为 Marketo 电子邮件模板的一部分,它要求我检查是否设置了潜在客户的布尔属性。
当我尝试在我的系统中显示与潜在客户相关的内容时,我可以做类似的事情;
{{lead.myName}}
这也适用于其中包含 space 的字段;
{{lead.my name}}
当涉及到将该字段用于 #set
ting 或 #if
ing 某些内容时,它也不起作用。
#if($lead.my name)
抛出一个错误,指出发现了意外的 space。
我试过 #if(${lead.my name})
之类的变体,但无济于事。
任何帮助/指点都会非常有用。
实际用例
在我的示例中,我需要访问的字段称为 lead.Subscribed to Innovation (L) 1
,我认为括号不会导致问题,当然任何错误消息都与 space 相关。
根据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" )
我最好的猜测是更改源系统以符合速度命名约定。