Symfony 注释翻译消息中的占位符
Placeholder in Symfony annotation translation message
我正在使用带有注释和断言的 Symfony 在表单中进行一些验证检查。使用以下注释,我正在检查字段是否为空:
@Assert\NotBlank(message="not_blank")
这生成了一条使用正确语言的消息,这种情况:
The field cannot be empty
现在我想将字段名称添加为占位符,这样我就不需要为每个字段制作单独的消息。所以像:
@Assert\NotBlank(message="not_blank {{ name=email }}")
<trans-unit id="1">
<source>not_blank</source>
<target>This {{ name }} field cannot be empty</target>
</trans-unit>
在翻译文件中它将是:
然后我可以输出:
The email field cannot be empty
如果可能的话,我不需要为每个字段单独发送消息,例如:姓名、电子邮件、街道等。
打开@Assert\NotBlank可以看到:
class NotBlank extends Constraint
{
public $message = 'This value should not be blank.';
}
所以你不能以其他方式使用它,但你可以通过扩展基本约束来创建自定义约束 class Constraint
我正在使用带有注释和断言的 Symfony 在表单中进行一些验证检查。使用以下注释,我正在检查字段是否为空:
@Assert\NotBlank(message="not_blank")
这生成了一条使用正确语言的消息,这种情况:
The field cannot be empty
现在我想将字段名称添加为占位符,这样我就不需要为每个字段制作单独的消息。所以像:
@Assert\NotBlank(message="not_blank {{ name=email }}")
<trans-unit id="1">
<source>not_blank</source>
<target>This {{ name }} field cannot be empty</target>
</trans-unit>
在翻译文件中它将是:
然后我可以输出:
The email field cannot be empty
如果可能的话,我不需要为每个字段单独发送消息,例如:姓名、电子邮件、街道等。
打开@Assert\NotBlank可以看到:
class NotBlank extends Constraint
{
public $message = 'This value should not be blank.';
}
所以你不能以其他方式使用它,但你可以通过扩展基本约束来创建自定义约束 class Constraint