液态模板操作

Liquid Template 渲染操作允许您使用强大的 液态JS 调伏语言. 此操作完全适合创建个性化的电子邮件,生成动态内容,或者任何您需要将数据与流程中的模板合并的情景.
特征
- 支持自定义和保存的模板
- 单批处理模式
- 从输入数据中返回特定字段以及已提供的内容的能力
- 通过可选认证获取安全模板
重要说明: 此扩展名对输出标记使用自定义分隔符 {# #} 而不是原来的 {{ }} 。这是为了避免与Directus用来从流中的其他步骤中填充值的胡子语法相冲突.
配置选项
样本已保存模板配置

自定义模板配置

模板模式
选择如何提供液态模板 :
- 自定义: 将模板写入操作中.
- 已保存: 使用存储在Directus收藏中的模板.
操作模式
选择处理模式 :
- 单身: 有单一数据对象的渲染一模板.
- 批次:将模板多次渲染,一次在一系列数据对象中针对每个项目.
模板
- (仅海关模式)
在此输入您的液体模板 。 使用QQ作为输出标记而不是QQ. 所有其他液体标记保持不变.
示例 Hello, {# user.name #}! {% if user.admin %}Admin area{% endif %}
收藏
- (只保存模式)
选择包含您保存的 Liquid 模板的收藏 .
模板项目
- (只保存模式)
从选中的收藏中选择要渲染的特定模板 .
到渲染器的字段
- (只保存模式)
从模板项中选择用于渲染进程的字段.
数据
JSON数据来充入模板. 格式:单模式对象,分批模式对象数组. 支持动态值的胡子语法,例如, {"user": "{{$trigger.user}}"}
访问托肯
- (只保存模式)
需要访问私有模板收藏 。 确保符符已读取模板收藏的权限 .
公开 URL
您 Directus 实例的公开 URL 。 用于获取已保存的模板 .
要返回的数据字段
- (仅批模式)
从输入数据中选择将包含在每个输出对象中的字段。 用于维持上下文或识别(例如"id","name"). 这些字段将连同已制作的分批项目模板一起添加.
样本
单一模式示例
- 模板模式 : 自定义
- 操作模式 : 单身
模板
<div>
<p>Hi {# first_name #}!</p>
<p><strong>Thanks for registering for XYZ!</strong></p>
<p>Here's your confirmation code:</p>
<pre>{# confirmation_code #}</pre> p
<p><strong><a href="https://yoururlhere.com/t/{# ticket.slug #}" target="_blank" rel="noopener">Your Ticket</a></strong></p>
<hr>
<p>The Team</p>
</div>
数据
{
"first_name": "Bryant",
"confirmation_code": "ABCDEFG",
"ticket": {
"slug": "test"
}
}
产出
{
"template": "<div>\n<p>Hi Bryant!</p>\n<p><strong>Thanks for registering for XYZ!</strong></p>\n<p>Here's your confirmation code:</p>\n<pre>ABCDEFG</pre> p\n<p><strong><a href=\"https://yoururlhere.com/t/test\" target=\"_blank\" rel=\"noopener\">Your Ticket</a></strong></p>\n<hr>\n<p>The Team</p>\n</div>"
}
批量模式示例
- 模板模式 : 自定义
- 操作模式 : 批次
- 从数据返回字段 :
[”first_name”]
模板
<div>
<p>Hi {# first_name #}!</p>
<p><strong>Thanks for registering for XYZ!</strong></p>
<p>Here's your confirmation code:</p>
<pre>{# confirmation_code #}</pre> p
<p><strong><a href="https://yoururlhere.com/t/{# ticket.slug #}" target="_blank" rel="noopener">Your Ticket</a></strong></p>
<hr>
<p>The Team</p>
</div>
数据
[
{
"first_name": "Bryant",
"confirmation_code": "ABCDEFG",
"ticket": {
"slug": "test"
}
},
{
"first_name": "John",
"confirmation_code": "HIJKLM",
"ticket": {
"slug": "test"
}
}
]
产出
[
{
"first_name": "Bryant",
"template": "<div>\n<p>Hi Bryant!</p>\n<p><strong>Thanks for registering for XYZ!</strong></p>\n<p>Here's your confirmation code:</p>\n<pre>ABCDEFG</pre> p\n<p><strong><a href=\"https://yoururlhere.com/t/test\" target=\"_blank\" rel=\"noopener\">Your Ticket</a></strong></p>\n<hr>\n<p>The Team</p>\n</div>"
},
{
"first_name": "John",
"template": "<div>\n<p>Hi John!</p>\n<p><strong>Thanks for registering for XYZ!</strong></p>\n<p>Here's your confirmation code:</p>\n<pre>HIJKLM</pre> p\n<p><strong><a href=\"https://yoururlhere.com/t/test\" target=\"_blank\" rel=\"noopener\">Your Ticket</a></strong></p>\n<hr>\n<p>The Team</p>\n</div>"
}
]
安全考虑
- 在使用已保存的模板时,确保访问令牌拥有最低限度的必要权限.
- 在使用模板中用户提供的数据时要谨慎,以避免潜在的安全风险.
- 考虑使用Directus角色和权限来控制敏感模板或数据的访问.