清除"不可用的迁移"列表(Symfony 3)

Vik*_*nko 11 php symfony

有一些迁移已被删除,并留在"不可用的迁移"列表中.如何清除它,因为每次通知消息都会烦恼一点.我的猜测是

migrations:doctrine:version

安慰

Dev*_*key 15

每当捆绑报告执行不可用的迁移时,它意味着migrations_versions数据库表中存在迁移标识符,这些标识符是您之前运行它时的标识符.

要删除通知,请确保在删除迁移文件时,从数据库表中删除其相应的标识符.

您可以使用(或手动)执行此操作:

php bin/console doctrine:migrations:version YYYYMMDDHHMMSS --delete

或者,使用以下命令回退迁移:

php bin/console doctrine:migrations:execute YYYYMMDDHHMMSS --down

但是这将运行该迁移文件的down函数,撤消它设置的任何内容并将其从数据库中删除.


Vik*_*nko 7

我试过了

php bin/console doctrine migrations:version YYYYMMDDHHMMSS --delete
Run Code Online (Sandbox Code Playgroud)

php bin/console doctrine:migrations:execute YYYYMMDDHHMMSS --down
Run Code Online (Sandbox Code Playgroud)

但只有在我们实际进行迁移的情况下,它才有效。

在此处输入图片说明

我询问了删除迁移时的情况。但是,感谢DevDonkey提供有关migration_versions表的信息。

我的解决方案是运行

php bin/console doctrine:migrations:status --show-versions

看看 在此处输入图片说明

并从migration_versions中删除这些行。

  • “--show-versions”选项似乎已在 Doctrine Migrations 3.0 中删除 (4认同)
  • 这正是我所说的。 (3认同)
  • 删除 `--show-versions` 后,您可以通过运行 `php bin/consoledoctrine:migrations:list` 获得类似的视图 (2认同)