This is an app that helps developers understand how their migrations are interconnected across their apps, serving as a tool to identify possible circular dependencies when squashing them.
pip install django-migration-dependencies
-
Add "migrations-graph" to your INSTALLED_APPS setting like this:
INSTALLED_APPS = [ ... 'migrations_graph', ]
-
Include the polls URLconf in your project urls.py like this::
import migrations_graph.urls path('migrations-graph/', include('migrations_graph.urls')),
-
Start the development server.
-
Visit http://127.0.0.1:8000/migrations_graph/ to see the graph.
- Shows migrations that run special operations (i.e:
RunPython
s orSeparateDatabaseAndState
) with Python's logo - Filter by app passing the query params
include
orexclude
. - Change
cytoscape
s layout with query paramlayout
. Takesdagre
(default) andbreadthfirst
.
- Sometimes you won't get a graph for some reason and find an error in the browser's console
Cannot set property 'order' of undefined...
. Change the layout by passing the query param?layout=breadthfirst
. For more info see dagrejs/dagre#234 - Sometimes the graph for an app wont be complete. Select it with
include
query param to have the full graph. I don't think I'll fix this any time soon :p.
This is a real quick hack to help a one-time need (for now). You won't find tests here (...that is, for now).