webikevn / migration-generate
从现有数据库生成Laravel迁移
Requires
- php: 7.3.*
- doctrine/dbal: ~2.4
- illuminate/support: ^5.6|^6.0|^7.0
Requires (Dev)
- mockery/mockery: ^1.0
- orchestra/testbench: ^3.6|^4.0|^5.0
- squizlabs/php_codesniffer: ^3.5
This package is auto-updated.
Last update: 2024-09-27 15:16:20 UTC
README
从现有数据库生成Laravel迁移,包括索引和外键!
##新闻
- 对FieldGenerator和IndexGenerator进行了主要重写。
- 修复了各种错误。
- 添加了对如geometry、point等空间数据类型支持。
- 支持更多Laravel迁移类型,如json、uuid、longText、year等。
- 添加了对spatialIndex的支持。
- timestamp和datetime支持精度。
- 修复了MySQL中的tinyInteger和boolean问题。
- 可以生成softDeletes、rememberToken、timestamps类型。
- 支持MySQL的set。
- 现在可以生成可空的timestamp。
- 删除了未使用的类。
- 添加了UT!
- 将添加更多UT以增加覆盖率。
此包是从https://github.com/Xethron/migrations-generator克隆并更新以支持Laravel 6及更高版本。
版本兼容性
安装
推荐通过composer安装此包
composer require --dev "webikevn/migration-generate"
Laravel设置
Laravel将自动为您注册服务提供者。
Lumen设置
Lumen中不可用自动发现,您需要在bootstrap/app.php中进行一些修改。
注册提供者
添加以下行
$app->register(\Webike\MigrationsGenerator\MigrationsGeneratorServiceProvider::class);
使用方法
要从数据库生成迁移,您需要在Laravel的Config中设置您的数据库。
运行php artisan migrate:generate来创建所有表的迁移,或者您可以使用php artisan migrate:generate table1,table2,table3,table4,table5指定您要生成的表。您也可以使用--ignore="table3,table4,table5"忽略某些表。
Laravel Migrations Generator将首先生成所有表、列和索引,然后设置所有外键约束。因此,请确保包含外键中列出的所有表,以便在创建外键时它们都存在。
如果您的连接不是默认连接,您可以使用--connection="connection_name"指定连接名称。
运行php artisan help migrate:generate以获取选项列表。
感谢
此包是从https://github.com/Xethron/migrations-generator克隆的
感谢Jeffrey Way的Laravel-4-Generators包。此包在很大程度上依赖于他的工作。
贡献者
Nguyen Giang (https://#/truonggiang.gk)
许可证
Laravel Migrations Generator是开源软件,许可协议为MIT许可证