Symfony SonataAdmin包的非空字段

Symfony SonataAdmin包的非空字段,symfony,symfony-2.1,symfony-sonata,sonata-admin,Symfony,Symfony 2.1,Symfony Sonata,Sonata Admin,您好,我对SonataAdminBundle有问题。 我已经在DB中创建了“Job”表,并在我的网站后端使用 插入数据时,表作业中的“NOTNULL”字段出现错误 例如,我有“nb_comment”,它是每个作业的注释数,因此当我在后端插入有关作业的所有信息时,我没有使用非空字段“nb_comment”,我有以下错误: PDOException: SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'nb_comment' c

您好,我对SonataAdminBundle有问题。
我已经在DB中创建了“Job”表,并在我的网站后端使用

插入数据时,表作业中的“NOTNULL”字段出现错误

例如,我有“nb_comment”,它是每个作业的注释数,因此当我在后端插入有关作业的所有信息时,我没有使用非空字段“nb_comment”,我有以下错误:

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

我想我也有同样的问题,这对我来说很有效。您必须使用
null
在模型中初始化变量
nb\u comment
,如下所示:

/**
 * @var integer $nb_comment
 */
private $nb_comment = null;

外接程序@ORM annotationnullable=true

use Doctrine\ORM\Mapping as ORM;

...

/**
 * @var integer $nb_comment
 * @ORM\Column(name="nb_comment", type="integer", nullable=true)
 */
private $nb_comment;
或者添加带有@Assert声明的约束验证器,并在构造中初始化

use Symfony\Component\Validator\Constraints as Assert;

/**
 * @var integer $nb_comment
 * @ORM\Column(name="nb_comment", type="integer")
 * @Assert\NotNull()
 */
private $nb_comment;

public function __construct()
{
    $this->nb_comment = 0;
}