在symfony2约束消息中大写过滤器

时间:2016-03-03 09:42:00

标签: symfony filter twig constraints translation

我是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));

许多坦克为您提供建议。

0 个答案:

没有答案