我正在创建一项服务,我希望允许最终用户编辑网页的 HTML 模板,允许访问特定的“变量”以包含在模板中。
我知道液体就是为此目的而设计的,安全(至少相对而言),并且在大量生产中使用。但是,与 Mustache 之类的语言相比,我发现该语言对于最终用户来说相当复杂。
Mustache 听起来不错,但我担心安全性……它曾经被用于最终用户模板吗?
基本上,我正在寻找一个模板引擎,我可以将其与 Rails 一起用于最终用户,即:
- 安全 - 不允许用户执行代码……至少不允许在服务器上执行。用户将被允许插入客户端 javascript。
- 功能强大 - 允许最终用户使用提供的“变量”并在 #1 的上下文中创建几乎任何他们可以想象的网页
- 简单 - 语法清晰且易于最终用户应用
- 如果支持以 javascript 和其他语言呈现模板语法,则可以加分。
液体满足 1 和 2,但不满足 3-4。小胡子满足 2-4,但我不确定 #1,这是不可协商的。
非常感谢任何见解、经验或评论。