dosfarma / migrations-bundle
dev-master
2020-10-14 10:05 UTC
Requires
- php: ^7.4
- davedevelopment/phpmig: ^1.7
- symfony/console: ^4.4
- symfony/dependency-injection: ^4.4|^5.0
- symfony/http-kernel: ^4.4
Suggests
- ext-mongodb: To be able to create migrations for MongoDB using provided MongoDBDriverManager
This package is auto-updated.
Last update: 2021-03-22 15:56:46 UTC
README
Symfony框架对davedevelopment/phpmig的集成
设置
# config/bundles.php return [ DosFarma\MigrationsBundle\DosFarmaMigrationsBundle::class => ['dev' => true, 'test' => true], ];
# services.yaml parameters: dos_farma.migrations.migrations_directory: '%kernel.project_dir%/migrations/postgresql/' dos_farma.migrations.migration_template: '%kernel.project_dir%/vendor/dosfarma/migrations-bundle/src/Resources/templates/dbalSql.php.twig' dos_farma.migrations.control_table: 'serviceschema.migrations' services: DosFarma\MigrationsBundle\Infrastructure\Service\Phpmig\Adapter\Adapter: class: DosFarma\MigrationsBundle\Infrastructure\Service\Phpmig\Adapter\DbalAdapter public: false autoconfigure: true arguments: $connection: '@connection.dbal.myservice' # Doctrine DBAL Connection $tableName: '%dos_farma.migrations.control_table%' DosFarma\MigrationsBundle\Infrastructure\Service\Phpmig\ConfigurationContainer: public: true class: DosFarma\MigrationsBundle\Infrastructure\Service\Phpmig\ConfigurationContainer autoconfigure: true factory: DosFarma\MigrationsBundle\Infrastructure\Service\Phpmig\ConfigurationContainer::from arguments: $adapter: '@DosFarma\MigrationsBundle\Infrastructure\Service\Phpmig\Adapter\Adapter' $directory: '%dos_farma.migrations.migrations_directory%' $template: '%dos_farma.migrations.migration_template%'
用法
- 初始化控制表(只需一次)
$ console migrations:init - 查看当前迁移状态
在需要非零返回值的错误批处理脚本中使用$ console migrations:status$ console migrations:check - 从模板生成新的迁移
$ console migrations:generate ThisIsTheMigrationSubject - 执行待定迁移
执行到指定迁移ID$ console migrations:migrate$ console migrations:migrate --target 20201014114643 - 回滚最后迁移
回滚到指定迁移ID,使用$ console migrations:rollback$ console migrations:rollback --target 20201014114643 - 升级迁移ID
$ console migrations:up 20201014114643 - 降级迁移ID
要重新执行(降级和升级)已迁移的ID,可以使用单个命令$ console migrations:down 20201014114643$ console migrations:redo 20201014114643