Symfony2表单验证

时间:2011-09-18 11:59:02

标签: bind symfony

在我的实体中,我有一个类似的字段:

/**
 * @var decimal $Size
 *
 * @ORM\Column(name="Size", type="decimal", scale="2")
 * @Assert\NotBlank()
 * @Assert\Type(type="numeric")
 */
private $Size;

但是当我在创建表单中键入一个字符串,如'foo'时,函数bindRequest抛出:

Expected argument of type "numeric", "boolean" given
500 Internal Server Error - UnexpectedTypeException

控制器代码为:

$request = $this->get('request');
if ($request->getMethod() == 'POST')
{           
     $form->bindRequest($request);   
     if ($form->isValid())
     {
         $em = $this->getDoctrine()->getEntityManager();
         $em->persist($support);
         $em->flush();

         return $this->redirect($this->generateUrl('mediatheque_support_' . $shortcut . '_list'));
      }
 }

有什么想法吗?

由于

1 个答案:

答案 0 :(得分:0)

您确定这不是预期的行为吗?你是断言一个类型“数字”并提供一个字符串“foo”...错误信息有点误导,但是说“boolean”提供