2012-02-20 69 views
1

目前,我们正在这样的:最佳的Django模型的方式

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

  2. 生成EER模型表

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

  4. 编码(现在我是唯一的编码器)。如果需要改变的车型代码将被更新,但不能效比图

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

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

回答

2

如果只是想生成一个更新的图与您的团队的工作:

  1. 安装Django的扩展和pygraphizpip install pygraphviz django-extensions
  2. 增加 'django_extensions' 到INSTALLED_APPS:此将启用django-extensions管理命令
  3. 生成图表./manage.py graph_models -a -g -o my_project_visualized.png

阅读更多关于graph_model command