froog / silvergraph
从 SilverStripe DataObjects 生成数据模型可视化,显示数据库字段、关系和世系
0.0.4
2017-02-06 05:40 UTC
Requires
- silverstripe/framework: ~3.0
This package is not auto-updated.
Last update: 2024-09-28 16:31:00 UTC
README
创建 SilverStripe DataObjects 的数据模型可视化,显示字段、关系和世系。可以输出 .png、.svg 和原始 GraphViz "dot" 格式的图像。具有灵活的配置选项,可以通过命令行和 URL 调用。
示例调用: http://example.com/Silvergraph/png?location=cms,framework,mysite
安装
- Composer/Packagist: 安装 composer,运行
composer require froog/silvergraph
(* 为版本) 并访问?flush=1
以更新路由表。 - 手动:下载并解压 silvergraph 为顶级网站目录下的
SilverGraph
文件夹,并访问?flush=1
以更新路由表。
在 OSX 上安装
- 通过 Homebrew 安装 Graphviz:
brew install graphviz
并记录位置 - 将位置添加到您的
_ss_environment.php
文件中,在路径末尾追加 'dot',例如:define('SILVERGRAPH_GRAPHVIZ_PATH', '/usr/local/Cellar/graphviz/2.38.0/bin/dot');
- 访问
?flush=1
以更新路由表。
要求
- SilverStripe 3.0.0+
- 创建图像:GraphViz(最新版本) https://graphviz.cn/
- 在 (Debian/Ubuntu) 上安装:
apt-get install graphviz
使用
命令行:(在网站根目录下)
- 默认 png 图像:
sake Silvergraph/png > datamodel.png
- 参数:
sake Silvergraph/png location=mysite,cms inherited=1 exclude=SiteTree > datamodel.png
- 默认 dot 文件:
sake Silvergraph/dot > datamodel.dot
浏览器:(以管理员身份登录)
- 默认 png 图像:http://example.com/Silvergraph/png
- 参数:http://example.com/Silvergraph/png?location=mysite,cms&inherited=1&exclude=SiteTree
- 默认 dot 文件:http://example.com/Silvergraph/dot
参数
指定查找类的文件夹
location=mysite
(默认) 仅在 /mysite 文件夹下绘制类location=
绘制每个模块中的所有类(警告 - 可能需要很长时间,并且可能生成大型 .png)location=mysite,mymodule
仅在 /mysite 和 /mymodule 文件夹下绘制类
从图中删除特定类
exclude=SiteTree
exclude=SiteTree,File
如何详细显示关系
relations=0
不显示任何关系relations=1
(默认) 不显示继承关系relations=2
显示继承关系(详细)
如何详细显示字段
fields=0
不显示任何字段fields=1
(默认) 仅显示在自身定义的字段fields=2
显示继承字段(详细)
如何详细显示祖先
ancestry=0
不显示任何祖先关系ancestry=1
(默认) 显示祖先关系
在图中包含 DataObject
include-root=0
(默认) 不绘制 DataObjectinclude-root=1
绘制 DataObject
按模块分组类
group=0
(默认) 不要按模块分组group=1
将模块分组到自己的容器中
指定方向图是如何布局的
rankdir=x
其中 x 是TB
(默认) ,LR
,RL
或BT
(从上到下,从左到右,从右到左,从下到上)