我创建了User实体,这是其属性之一:
/**
* @ORM\Column(type="string", length=50, nullable=true)
*
* @Assert\Length(max="50")
* @Assert\NotNull()
*/
private $firstName;
在Api Controller中,当我想验证用户或提交编辑用户表单时,我会收到错误消息。
控制器:
public function edit(Request $request, ValidatorInterface $validator)
{
$user = $this->getUser();
$validator->validate($this->getUser()); # i get error here
}
错误是:
属性\“名字\”在类中不存在 \“代理\ __ CG __ \ App \ Entity \ User \”“
但是我有firstName
,可以为此使用getter和setter。
答案 0 :(得分:0)
您可以尝试这种方式。
$user = $this->getUser();
$repository = $this->getDoctrine()->getRepository(YourEntity::class);
$userEntity = $repository->find($user->getId());
$validator->validate($userEntity);