代码
房间表的实体。
use DoctrineORMMapping as ORM;
class Room
{
/**
* @ORMId()
* @ORMGeneratedValue()
* @ORMColumn(type="integer")
*/
private $id;
/**
* @var string
*
* @ORMColumn(type="string")
*/
private $name;
/**
* @var int
*
* @ORMColumn(type="integer")
*/
private $groupOrder;
/**
* @var boolean
*
* @ORMColumn(type="boolean", options={"after": "active","default": false})
*/
private $isAssociable;
/**
* @var bool
*
* @ORMColumn(type="boolean", options={"default" : 1})
*/
private $active = true;
/**
* @var DateTime
*
* @ORMColumn(type="datetime")
*/
private $createdAt;
/**
* @var DateTime
*
* @ORMColumn(type="datetime")
*/
private $updatedAt;
}
我在控制台上运行以下命令,但输出并不像预期的
php bin/console doctrine:schema:update --dump-sql
预期输出
ALTER TABLE room ADD is_associable TINYINT(1(DEFAULT'0'NOT NULLAFTER活动;
我得到的(输出(
ALTER TABLE room ADD is_associable TINYINT(1(DEFAULT'0'NOT NULL;
在教义中似乎天生就不能做到这一点。可能处理该问题的列的选项参数不可用。无论如何,也许你可以通过(当然所有的想法都是变通办法(实现这一点:
-
创建自定义"位置";注释字段,当然您需要编写自定义命令,该命令将运行
doctrine:schema:update --dump-sql
并修改sql输出(这只是我的想法(。 -
使用迁移来实现这一点,在迁移中将放置原始sql
-
在github上创建PR或Issue to Doctrine ORM项目。