提交表单类型为symfony2

时间:2016-04-03 14:45:46

标签: api symfony

我尝试以下列方式使用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”的重复条目

顺便说一句,我的表单没有填充请求数据。

1 个答案:

答案 0 :(得分:0)

如果消息错误说明,您的数据库违规行为违反了您的表单验证。看起来您尝试再次记录标有唯一键的字段。