我尝试以下列方式使用Symfony 2的表单类型实体更新我的实体。我正在使用jsonrpc协议将json数据发送到服务器端
public functionUpdatMethod($params)
{
$user = $this->em->getRepository("Repository:User")->find($id);
$form = $this->formFactory->createBuilder(UserType::class, $user)->getForm();
$data = $this->requestStack->getCurrentRequest();
$form->submit(json_decode($data, true));
$form->isValid()
if($form->isValid()) { // return true
try {
$this->em->flush();
return "ok";
} catch (\Exception $e) {
dump($e->getMessage());
exit();
}
}
}
isValid
方法返回true,但我遇到以下错误:
错误:SQLSTATE [23000]:完整性约束违规:1062密钥“UNIQ_8D93D6495126AC48”的重复条目
顺便说一句,我的表单没有填充请求数据。
答案 0 :(得分:0)
如果消息错误说明,您的数据库违规行为违反了您的表单验证。看起来您尝试再次记录标有唯一键的字段。