Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Symfony2-可空注释选项不';行不通_Symfony_Doctrine - Fatal编程技术网

Symfony2-可空注释选项不';行不通

Symfony2-可空注释选项不';行不通,symfony,doctrine,Symfony,Doctrine,我已将属性/列(社区)添加到现有实体(设备)中。我希望此列中的值在默认情况下为null,因此我执行了以下操作: /** * @var integer * * @ORM\Column(name="community", type="integer", nullable=true) */ private $community = null; 之后,我用以下内容更新了数据库: php app/console doctrine:schema:update --dump-sql 但我得到了:

我已将属性/列(社区)添加到现有实体(设备)中。我希望此列中的值在默认情况下为
null
,因此我执行了以下操作:

/**
 * @var integer
 *
 * @ORM\Column(name="community", type="integer", nullable=true)
 */
private $community = null;
之后,我用以下内容更新了数据库:

php app/console doctrine:schema:update --dump-sql
但我得到了:

ALTER TABLE device ADD community INT NOT NULL

因此,
nullable
选项似乎不起作用,因为它正在插入一个
notnull
字段。

我在生产环境中使用了该命令(默认)

仅使用此命令(使用
--env=dev
)即可解决此问题:


尝试删除属性的“=null”,然后重新启动command@KernelFolla-谢谢您的建议,但我只是在生产环境中使用命令。只需使用
php应用程序/控制台原则即可解决:schema:update--dump sql--env=dev
。如果希望私有类属性具有默认值,则应将其放入构造函数中。例如
$this->community=null
@Peter-实际上,默认值
null
不需要。在Symfony 4.2
bin/console原则中:schema:update--env=dev--force
。我遇到了类似的问题,其中可为NULL的字段通过
diff
或正常
schema:update
生成为NOTNULL。
php app/console doctrine:schema:update --dump-sql --env=dev