2016-07-06 60 views
1

我想翻译范围的以下错误消息: 此值应该是1990年1月1日,中午12:00或更多。Symfony 3翻译错误验证程序范围

我使用的Symfony的,对于我的其他错误作品的功能,除了这一个:

$this->get('translator')->trans($err, [], 'validators')

我应该用别的东西来翻译这个错误?

+1

$ err的值是多少?以及包含验证器文件的内容? – Matteo

+1

您是否使用'@Assert \ Range'或类似的东西?如果是这样,您可以通过在message =“my_range_message”中输入id来简单地翻译消息,其中在您的'validators.en.yml','validators.fr.yml'等中找到'my_range_message'。验证信息的翻译应该在模型(实体)中比在控制器中完成,除非你有一些特定的要求。 – cezar

+0

@Matteo:我在$ err上有这个:这个值应该是1990年1月1日,12:00 AM或更多。 –

回答

4

如果我理解正确,就可以进行怎样切扎尔建议,如例如,你可以使用注释:

MyEntity.php

/** 
* @Assert\Range(
*  min = "now", 
*  max = "+5 hours", 
*  minMessage = "myMinMessage" 
*) 
*/ 
private $myDate; 

并添加翻译的文件,例如:

validators.en.yml

myMinMessage: bla bla value should be {{ limit }} or more. You entered {{ value }} 

希望对您有所帮助

+1

是的非常感谢你 –