简单实体关系 (ER) 图生成
项目描述
实体关系图生成器
eralchemy2 从数据库或 SQLAlchemy 模型生成实体关系(ER)图(如下图)。适用于 SQLAlchemy < 1.4,但也适用于大于 1.4 的版本
例子
快速开始
安装
要安装 eralchemy2,只需执行以下操作:
$ pip install eralchemy2
eralchemy2
需要GraphViz来生成图形和 Python。两者都可用于 Windows、Mac 和 Linux。
从命令行使用
从数据库
$ eralchemy2 -i sqlite:///relative/path/to/db.db -o erd_from_sqlite.pdf
数据库被指定为SQLAlchemy 数据库 url。
来自降价文件。
$ curl 'https://raw.githubusercontent.com/maurerle/eralchemy2/main/example/newsmeme.er' > markdown_file.er
$ eralchemy2 -i 'markdown_file.er' -o erd_from_markdown_file.pdf
从 Postgresql DB 到 markdown 文件,不包括名为temp
和audit
$ eralchemy2 -i 'postgresql+psycopg2://username:password@hostname:5432/databasename' -o filtered.er --exclude-tables temp audit
从 Postgresql DB 到 markdown 文件,不包括命名列created_at
和updated_at
所有表
$ eralchemy2 -i 'postgresql+psycopg2://username:password@hostname:5432/databasename' -o filtered.er --exclude-columns created_at updated_at
从 Postgresql 数据库到架构的降价文件schema
$ eralchemy2 -i 'postgresql+psycopg2://username:password@hostname:5432/databasename' -s schema
来自 Python 的用法
from eralchemy2 import render_er
## Draw from SQLAlchemy base
render_er(Base, 'erd_from_sqlalchemy.png')
## Draw from database
render_er("sqlite:///relative/path/to/db.db", 'erd_from_sqlite.png')
建筑学
由于它的模块化架构,它可以连接到其他 ORMs/ODMs/OGMs/O*Ms。
贡献
欢迎对GitHub 问题提出任何反馈。
要运行测试,请使用 :$ py.test
或$ tox
. 一些测试需要一个本地 postgres 数据库,该数据库的模式名为 test 在名为 test 的数据库中,所有这些数据库都由名为 eralchemy 的用户拥有,密码为 eralchemy。这可以使用 docker-compose 轻松设置:docker-compose up -d
.
欢迎所有经过测试的 PR。
笔记
eralchemy2 是其前身ERAlchemy的一个分支,由 @Alexis-benoist 开发,不再维护,并且不适用于 SQLAlchemy > 1.4。如果再次维护,我想将集成的更改推送到上游。
ERAlchemy 受到erd的启发,尽管它能够直接从数据库中渲染 ER 图,而不仅仅是从ER
标记语言中。
根据 Apache 许可证 2.0 发布
初始创作者:Alexis Benoist Alexis_Benoist
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源分布
eralchemy2-1.3.4.tar.gz
(16.0 kB
查看哈希)
内置分布
eralchemy2-1.3.4-py3-none-any.whl
(16.0 kB
查看哈希)
关
eralchemy2-1.3.4.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 0276e919d449d28fc2c3af407094837a69bc23bd72d020f1637093cbd125ea26 |
|
MD5 | 01e8f47d3a5da540b7b3b51f303950b2 |
|
布莱克2-256 | f2517e619d95b4025ff05d587fa0a4c22aa5ab4ef5eb2662ce87d9f534dffdda |
关
eralchemy2-1.3.4 -py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | cf8ae7239256691305c05794eec0b01e24af34b9309a680cf4f94f7a1b7ae532 |
|
MD5 | 4797a90cee4a721bce7145c4cefeec39 |
|
布莱克2-256 | 9640b9a0a9cf0e4f4479a38ac7a4656817219cf1cef70ca66f73b8bac5a7a19c |