如何在@UniqueEntity约束中翻译消息?
我遇到这种情况:
/**
* @ORM\Entity
* @ORM\Table(name="sites")
* @UniqueEntity(
* fields={"url"},
* message="This url is already registered. Please choose a different url."
* )
*/
class Site
{
如果我保留默认消息("此值已被使用。")它会自动翻译一些捆绑的字符串...但我找不到任何有关如何翻译的文档自定义错误消息。 (我尝试将该字符串放在默认域messages
中,但它没有被翻译)
答案 0 :(得分:3)
我发现了。
该域名验证者而非消息,因此您必须在validators
域中创建转换文件,例如:
// app/Resources/translations/validators.it.php
return [
'This url is already registered. Please choose a different url.'=>'Questo url è già registrato. Scegli un url diverso.',
];
答案 1 :(得分:0)
这是我的解决方案。
首先,为您的消息设置标识符:
/**
* @ORM\Entity
* @ORM\Table(name="sites")
* @UniqueEntity(
* fields={"url"},
* message="entity.site.unique"
* )
*/
class Site
{
然后创建以下文件(messages.XX.yml),每个文件一个。
entity:
site:
unique: "Your message"
我希望这有帮助。