django应用程序检测循环导入
django-detect-cyclic的Python项目详细描述
内容
Django detect cyclic
用于检测循环导入的应用程序。 使用此应用程序,您可以分析应用程序的依赖性
Requeriments
- python-graph-core (1.8.1)
- python-graph-dot (1.8.1)
- pysmell (0.7.3)
- pyplete (0.0.2)
- django-form-admin (0.3.2) (optional)
- jquery.graphviz (fronzen into the app, only to svg-js format)
Installation
在您的设置中。py:
INSTALLED_APPS = ( 'django_detect_cyclic', )
在您的url.py:
urlpatterns = patterns('', (r'^admin/detect_cyclic/', include('django_detect_cyclic.urls')), )
确保您的url中有jsi18nurl:
js_info_dict = { 'packages': ('your.app.package',), } urlpatterns = patterns('', url(r'^jsi18n/$', 'django.views.i18n.javascript_catalog', js_info_dict), )
Usage
有两种方法,可以运行命令:
python manage.py detect_cyclic python manage.py detect_cyclic --include-apps="app1,app6,app7,app11" --file-name="my_graph.svg" --exclude-packages="migrations,templatetags" --verbosity=2 python manage.py detect_cyclic --include-apps="app1,app6" --show-modules --file-name="my_graph.svg" --exclude-packages="migrations" --verbosity=2 python manage.py detect_cyclic --include-apps="app1,app6" --only-cyclic --file-name="my_graph.svg" --exclude-packages="migrations" --verbosity=2
或者您可以通过Web访问向导:
/admin/detect_cyclic/
Releases
0.0.9 (2012-09-02)
- 修复一些错误
- 使代码适应pyplete的最后一个版本。现在检测相对导入,如下所示:
from models import MyModel # from the same directory of the models.py
这个:
from .models import MyModel # from the same directory of the models.py
0.0.8 (2012-08-09)
- Loaded a templatetag, and with this you get a error
- Now works the js in Django 1.4
- Fix a error when you had some application repeat in your settings (INSTALLED_APPS)
- Fix a csr error when you click in download the graph and the format is svg-js
0.0.7 (2012-07-25)
- Now jquery.graphviz has a stable version (0.0.1, Tested in Chrome, FireFox, Safari and IE9)
- Detail to the js
0.0.6 (2012-07-23)
- Format svg-js (beta). Change dracula js to jquery.graphviz.js (Tested in Chrome and FireFox)
0.0.5 (2012-07-13)
- Change force-colors option to use-colors option
- Change distribution of the wizard
- Usability
0.0.4 (2012-07-12)
- Wizard to create graphs (/admin/detect_cyclic/)
- Format svg-js (alpha)
- Fix a little errors
0.0.3 (2012-07-10)
- Add the option “scope-global”, this ignore the imports into the functions
- Now if the verbosity option is 1, only show the errors
- Now when a node (with show-modules) has the same name that a application, the node name will be app_name.__init__
- Now the label of the cycle edges has the same color that the edge
- Now disabled the colors of the edge and nodes when the format is not svg. But it is possible enabled if you use the “force color” option
- Optimizations
- New option “dotted-scope-local”. If the all import between two nodes are into a function the edge will be dotted
- Fixed some little errors
0.0.2 (2012-07-09)
- Documentation and examples
0.0.1 (2012-07-09)
- Initial release.