wutaophp / laravel-er-diagram-generator
从您的 Laravel 模型生成 ER 图。
Requires
- php: ^7.1|^8.0
- doctrine/dbal: ^3.3
- nikic/php-parser: ^2.0|^3.0|^4.0
- phpdocumentor/graphviz: ^1.0
Requires (Dev)
- larapack/dd: ^1.0
- orchestra/testbench: ~3.5|~3.6|~3.7|~3.8|^4.0
- phpunit/phpunit: ^7.0| ^8.0
- spatie/phpunit-snapshot-assertions: ^1.3
README
此包允许您通过检查模型文件中定义的关系来生成实体关系图。它具有高度的可定制性。在幕后,它使用 GraphViz 生成图形。
如果您想学习如何自己创建可重用的 PHP 包,请查看我即将推出的 PHP 包开发 视频课程。
先决条件
所需的最小 PHP 版本为 7.1.0。
要求
此包需要 graphviz
工具。
您可以在 MacOS 上通过 homebrew 安装 Graphviz
brew install graphviz
或者,如果您使用的是 Homestead
sudo apt-get install graphviz
要在 Windows 上安装 Graphviz,请从 官方网站 下载。
安装
您可以通过 composer 安装此包
composer require beyondcode/laravel-er-diagram-generator --dev
如果您使用 Laravel 5.5+,则包会自动为您注册服务提供者。
如果您使用 Lumen,则需要将以下内容添加到 bootstrap\app.php
\\ Register Service Providers $app->register(BeyondCode\ErdGenerator\ErdGeneratorServiceProvider::class);
使用
默认情况下,此包将自动检测您 app
目录中扩展 Eloquent Model 类的所有模型。如果您想明确指定模型的位置,可以使用以下命令发布配置文件。
php artisan vendor:publish --provider=BeyondCode\\ErdGenerator\\ErdGeneratorServiceProvider
如果您使用 Lumen 并想自定义配置,则需要从供应商目录复制配置文件
cp ./vendor/beyondcode/laravel-er-diagram-generator/config/config.php config/erd-generator.php
生成图
您可以使用提供的 artisan 命令生成实体关系图
php artisan generate:erd
这将生成一个名为 graph.png
的文件。
您也可以指定一个自定义文件名
php artisan generate:erd output.png
或使用其他 输出格式,例如 SVG
php artisan generate:erd output.svg --format=svg
定制
请查看已发布的 erd-generator.php
配置文件以获取所有可用的定制选项。
示例
以下是从 Laravel.io 代码库中取的一些示例。
测试
composer test
更新日志
请参阅 CHANGELOG 了解最近更改的详细信息。
贡献
请参阅 CONTRIBUTING 了解详细信息。
安全
如果您发现任何安全相关的问题,请通过电子邮件发送至 marcel@beyondco.de,而不是使用问题跟踪器。
鸣谢
许可
MIT 许可证 (MIT)。有关更多信息,请参阅 许可文件。