繁体   English   中英

Phalcon的Volt引擎的自动转义设置?

[英]Autoescape setting for Phalcon's Volt-engine?

Phalcon文档提到了如何使用过滤器|e或通过自动转义模式{% autoescape true %} 但是Twig默认情况下启用了自动转义功能,您可以将其作为选项传递给Twig Environment对象。 因此,在Twig中,您可以全局控制应用程序的自动转义。

Phalcon是否提供相同的可能性? 我真的在Google上找不到这个答案,而且我的C知识不存在。

是的,这可能是个问题,因为伏特实现转义中的AFAIK是用来处理块或表达式的,因此可能很难确定应该处理的内容。

恕我直言,更简单的方法是通过自定义编译器以仅在值来自外部源(例如变量或方法返回)时对表达式进行转义。 所以......答案是基本没有 ,伏不能这样做。 但这确实是该框架的出色NRF


编辑

多考虑问题,我意识到我在应用程序中做了类似的事情。 CRUD操作中的数据交换通常是“表单”,控制器和持久性之间的一个循环,除了Phalcon提供的所有帮助程序(从ORM到Form抽象)之外,我们还需要应用一些约定来自动执行更多CRUD操作,这些操作基本上是大部分时间都一样。

因此,我有两个组件可以帮助我从表单中获取模型数据,而另一个组件则可以帮助我从数据库中获取模型数据。 在这两个组件的值转换中,每次操作都会自动调用过滤器和验证。

我说这是因为字符串的默认过滤器是字符串转义。 我的意思是,如果担心对控制器输入的任何数据(即来自表单或数据库的数据)进行数据清理时,可能会得到更好的结果。 作为奖励,您可以在模型中获得更一致且更强的类型化值,从而使您的业务逻辑实现更加简单。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM