我是symfony的新手。我在symfony文档中搜索了很多: http://symfony.com/doc/current/book/translation.html#translating-constraint-messages
但我一无所获。 我知道如何在树枝模板中使用大写枝条过滤器。 http://twig.sensiolabs.org/doc/filters/capitalize.html
{{ 'my first car'|capitalize }}
但是有可能在这三种情况下将翻译资本化:
在实体注释中约束消息(此示例不起作用,如果我添加大写,则不翻译翻译)
class Author
{
/**
* @Assert\NotBlank(message = "author.name.not_blank|capitalize")
*/
public $name;
}
在表单构建器中(此示例不起作用,如果我添加大写,则不翻译翻译)
->add('plainPassword', RepeatedType::class, array(
'type' => PasswordType::class,
'invalid_message' => 'user.password_confirm_mismatch|capitalize',
'first_options' => array('label' => 'Password'),
'second_options' => array('label' => 'Repeat Password'),
'required' => false
)
在具有translator service的控制器中。在这种情况下,它不是很重要,因为我可以使用php ucfirst函数。但也许还有另一种方法更符合symfony最佳实践。
//Not capitalized, any way to add twig capitalize filter in this code?
$tranlsation_test_1 = $this->get('translator')->trans('info.profile_updated_successfully',array(),null,$new_user_app_language_code);
//Capitalized but with the php ucfirst function
$tranlsation_test_2 = ucfirst($this->get('translator')->trans('info.profile_updated_successfully',array(),null,$new_user_app_language_code));
许多坦克为您提供建议。