我想使用Symfony(从2.6开始)有效载荷属性进行验证
(例如http://symfony.com/doc/current/cookbook/validation/severity.html)
但是当他们使用带有注释时,如他们建议的那样:
// src/AppBundle/Entity/User.php
namespace AppBundle\Entity;
use Symfony\Component\Validator\Constraints as Assert;
class User
{
/**
* @Assert\NotBlank(payload = {severity = "error"})
*/
protected $username;
}
我得到的是一个错误告诉我:[语义错误]无法找到持续的严重性
我尝试了其他几种组合,例如有效负载=" {severtiy ='错误'}",有效负载=严重性=错误,有效负载=数组('严重性' =>'错误')和其他人 - 没什么可行的。
在YML中使用有效载荷时,它就像魅力一样。
有人知道如何将其与注释一起使用吗?谢谢!
当然,我有注释工作(验证:{enable_annotations:true}),任何其他验证注释都有效,它只是导致麻烦的有效负载属性。
答案 0 :(得分:2)
您只是在注释中缺少数组键周围的引号。如果未引用数组键,则Doctrine注释解析器会认为您正在尝试使用PHP常量作为键。
@Assert\NotBlank(payload = {"severity" = "error"})