是否有从 django 模型创建 UML 的应用程序?

Posted

技术标签:

【中文标题】是否有从 django 模型创建 UML 的应用程序?【英文标题】:Is there an app to create UML from django models? 【发布时间】:2011-04-10 05:47:15 【问题描述】:

我正在寻找一种从 Django 应用程序Model 结构生成 UML 图的方法。

Epydoc 不适用于 Django 模型,因为它需要导入 django 的 settings.py 并且 manage.py graph_models 生成不可读的输出,不易解析且难以转换为 UML。

是否有任何工具可以做到这一点?

【问题讨论】:

我已经开始在app called django-spaghetti-and-meatballs that produces interactive html entity-relationship diagrams from django model definitions 上工作了,比如 i.stack.imgur.com/lvxSG.png Django - Model graphic representation (ERD)的可能重复 你有没有发现比 graph_models 更好的东西? 【参考方案1】:

django_extensions 应用中有一个图表工具。正是这个http://code.google.com/p/django-command-extensions/wiki/GraphModels

# Create a PNG image file called my_project_visualized.png with application grouping
$ ./manage.py graph_models -a -g -o my_project_visualized.png

【讨论】:

-1。如果您阅读该问题,您会注意到我谈到了 graph_model。 以为你不知道 .png 输出 我做到了。当我的意思是不可读时,我的意思不是因为文件格式,而是因为它非常非常难看。 当您以 .pdf 格式导出时,您可以在结果中搜索文本,这使得输出对我来说足够可用。 ./manage.py graph_models -a -g -o my_project_visualized.pdf【参考方案2】:

pyreverse 现在是pylint 的一部分,可创建合理的UML 文档。

pyreverse -o pdf project_name/models.py -p project

【讨论】:

pyreverse 分析通用 Python,而不是 Django ORM 模型声明。但是 Django 模型类中的 ForeignKey (等)关系是 OP 所要求的最重要的信息。

以上是关于是否有从 django 模型创建 UML 的应用程序?的主要内容,如果未能解决你的问题,请参考以下文章

UML和模式应用5:细化阶段--如何创建领域模型

如何构建我们的 django 模型

是否有从 SVG 文件创建 SVG 路径的工具? [关闭]

Django:是否可以通过模型的PK将模型的FK链接到一对多关系?

Django - 使用给定的 sql 转储创建其他模型并填充数据 [重复]

Django:使用 JSON 数据创建和保存模型