如何使用空字符串值保存DB中的实体

时间:2014-05-29 09:07:33

标签: forms symfony doctrine-orm entity

我有一个属性实体:

/**
 * @var string The title attr
 *
 * @ORM\Column(type="string", length=255)
 */
protected $title = '';

表单类型为:

    $builder
        ->add('title', 'text', array(
            'required' => false,
        ))

但是当我从form获取此空值并尝试将此实体保存到数据库时,我会收到下一个错误:

SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'title' cannot be null

为什么null?我将此属性设置为空字符串'',并且它不是null

如何将此实体存储到空字符串''(并且没有@ORM\Column(type="string", length=255, nullable=true))的数据库中?

1 个答案:

答案 0 :(得分:0)

将默认列值设置为空字符串:

/**
 * @var string The title attr
 *
 * @ORM\Column(type="string", length=255, options={"default":""})
 */
protected $title = '';