Django建模的最佳方式

时间:2012-02-20 13:32:11

标签: mysql django modeling eer-model

目前我们的工作方式如下:

  1. 使用MySQL Workbench创建EER模型,至少涉及一个人讨论

  2. 从EER模型

  3. 生成表格
  4. manage.py inspectdb 创建models.py,仔细编辑models.py,因为inspectdb无法正常工作

  5. 编码(现在我是唯一的编码员)。如果模型需要更改,则会更新代码,但不会更新到EER图

  6. 问题在于,如果图表未同步,现在其他团队成员(现在只有一个)感觉很难进行进一步的更改。我的观点是讨论可能只是基于代码,也是某种文档。对我来说,查看图表或代码没有太大区别。如果我们需要保持文档是最新的,对我来说它看起来像某种重复。你是怎么做到的?

    我们还尝试只保留一个来源,例如代码,所以每次我们使用 syncdb 生成表格,然后生成EER图表,问题是MySQL Workbench的自动布局不能很好地工作,你总是需要重新安排一切。我还发现了一些可以将UML图转换为模型的工具,反之亦然,但我怀疑它是否能正常工作,因为我曾经使用过CASE工具,它可以从UML图和文档生成源代码(Java / C ++)(例如Word)但该工具不易使用,我遇到了一些问题......我的问题是,是否有一个很好的工具来保持代码和图表的同步?

1 个答案:

答案 0 :(得分:2)

如果只想生成更新的图表以与您的团队合作:

  1. 安装django-extensions和pygraphiz pip install pygraphviz django-extensions
  2. 将'django_extensions'添加到INSTALLED_APPS :这将启用django-extensions管理命令
  3. 生成图表./manage.py graph_models -a -g -o my_project_visualized.png
  4. 详细了解graph_model command