利用GraphModels生成Django项目的model关系图

Django内的ORM机制,使model声明的时候已经说明了各个model间的关系。
如果能自动生成一张关系图,对理解整个项目回有很大帮助。


django-command-extensions 是一个Django的扩展项目,
项目主页: http://code.google.com/p/django-command-extensions/

其中的 GraphModels模块可以根据model生成关系模型,
(生成一个dot文件,然后通过 GraphViz 渲染成图片) 


安装¶

  • 主页:http://code.google.com/p/django-command-extensions/

  • 安装:

     
         
    1. python setup.py install

  • 配置:

     
         
    1. INSTALLED_APPS = (
    2. ...
    3. 'django_extensions',
    4. )


使用¶

生成所有modle关系图

 
  
  1. # Create a dot file
  2. $ ./manage.py graph_models -a > my_project.dot

生成几个app的关系图

 
  
  1. # Create a dot file for only the 'foo' and 'bar' applications of your project
  2. $ ./manage.py graph_models foo bar > my_project.dot

注:

GraphViz 是个不错图形渲染工具,网址为:http://www.graphviz.org/


下面是两张例图是从satchmo中导出来的


1: 整体关系




2:一个应用中model的关系



你可能感兴趣的:(利用GraphModels生成Django项目的model关系图)