用户的Symfony 2.3消息保存为资源yml文件

时间:2013-12-24 17:23:23

标签: symfony

Symfony 2.3中是否有办法使用从yml文件加载的消息?

示例:CRUD控制器只是为了创建实体而不是Entity created.来回显消息。

有没有办法在yml文件中定义这个字符串,并将它用于每个CRUD控制器/ Twig模板并定义一次而不是为每个crud编写它?

用更好的例子解释:

创建实体时:

$this->get('session')->getFlashBag()->add('success-close', 'Entity created.');

但我只想像这样使用

$this->get('session')->getFlashBag()->add('success-close', $str_entity_created);

其中$str_entity_creted在假设messages.yml文件中定义

#MyBundle/Resources/messages.yml
messages:
  str_entity_created: "Entity created."
  ...
  ....

因此,对于每个CRUD,我必须在一个地方更改字符串,并且它在我的整个应用程序中全局更改,而不是更改每个CRUD控制器中的每个字符串。

有没有办法实现这个目标?

如果我必须全局加载yml资源,它会降低内存消耗和性能的程度吗?

1 个答案:

答案 0 :(得分:0)

使用translations

$translated = $this->get('translator')->trans('Symfony2 is great');

messages.fr.yml

Symfony2 is great: J'aime Symfony2