net-results / laravel-file-generator
生成迁移、GraphQL、工厂文件
Requires
- php: >=7.1.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
README
从现有数据库生成Laravel迁移,包括索引和外键!
V4 更新
- 对
FieldGenerator
和IndexGenerator
进行了主要的重写。 - 修复了一些杂项错误。
- 添加了对如
geometry
、point
等空间数据类型的支持。 - 支持更多Laravel迁移类型,如
json
、uuid
、longText
、year
等。 - 添加了对
spatialIndex
的支持。 timestamp
和datetime
支持精度。- 修复了MySQL的
tinyInteger
和boolean
问题。 - 可以生成
softDeletes
、rememberToken
、timestamps
类型。 - 支持MySQL的
set
。 - 现在可以生成可空的
timestamp
。 - 移除了未使用的类。
- 添加了单元测试!
- 将添加更多单元测试以增加覆盖率。
此包是从 https://github.com/Xethron/migrations-generator 克隆而来,并更新以支持Laravel 6及更高版本。
版本兼容性
安装
推荐通过composer安装此包。
composer require --dev "kitloong/laravel-migrations-generator"
Laravel配置
Laravel会自动为您注册服务提供者。
Lumen配置
Lumen中不可用自动发现,您需要在 bootstrap/app.php
进行一些修改。
启用外观
取消以下行的注释
$app->withFacades();
注册提供者
添加以下行
$app->register(\KitLoong\MigrationsGenerator\MigrationsGeneratorServiceProvider::class);
使用方法
要从数据库生成迁移,您需要在Laravel的配置中设置您的数据库。
运行 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
查看选项列表。
感谢
感谢Bernhard Breytenbach的出色工作。此包是从 https://github.com/Xethron/migrations-generator 克隆而来的。
感谢Jeffrey Way的惊人Laravel-4-Generators包。此包在很大程度上依赖于他的工作。
贡献者
Kit Loong
Bernhard Breytenbach (@BBreyten)
许可证
Laravel Migrations Generator 是开源软件,许可协议为 MIT 许可证