我一直在学习php和symfony的最后2天,通过视频教程工作,因为我需要学习使用php和symfony等作为前端到Java编写的春季应用程序。Twig消息翻译
我在上无效登录的部分,也有一些是我不能让我的头的时候,我不知道它的语法或什么,但它真正地不是清楚正在发生的事情在这里:
{% if error %}
<div>{{error.messageKey|trans(error.messageData, 'security') }}</div>
{% endif %}
我明白,当框架放在那里时,错误对象是隐含可用的,但是发生了什么?它看起来像messageKey值被传递到trans函数中,但是该函数在做什么?
如果我只是打印出没有trans函数的error.messageKey,它的管道符号是OR,而不是此实例中的管道?
我阅读文档,但它没有解释当调用trans函数并传递trans(error.messageData,'security')时发生了什么。如果error.MessageKey正在被翻译,这是可以理解的,我只是用{{error.messageKey | trans}}来翻译成消息。 error.MessageData传入时发生了什么,以及字符串安全性? – berimbolo
这个线程谈论它,并包含一个接受的答案https://stackoverflow.com/questions/30615754/symfony2-difference-between-error-message-and-error-messagekey – eraffaelli
它包含一个为什么它使用不同的接受答案变量,error.message和error.messageKey,它并不真正回答我的问题。将error.messageData和'security'传递给翻译器函数的目的是什么? – berimbolo