2013-05-01 6 views
22

È possibile generare un diagramma di un intero sito Django? Ad esempio, per comprendere la struttura del modello/database, utilizzo graphViz che è estremamente utile per tenere traccia della struttura del modello e molto utile per le discussioni.È possibile generare un diagramma di un'intera webapp Django?

Ero curioso di sapere se qualcosa di simile esistesse per il sito Django completo in modo che urls/models/views/templates potesse essere rappresentato graficamente. Non so come sarebbe, ma sono curioso di sapere se esiste uno strumento per farlo.

Questo genererebbe un diagramma che mostra il flusso del codice tra diverse parti del sito.

+1

Ho iniziato a lavorare su app che risolve questo problema. In questo momento è ancora abbastanza barebone, ma produce [grafici HTML interattivi dalle definizioni del modello django] (https://github.com/LegoStormtroopr/django-spaghetti-and-meatballs), come questo http: //i.stack. imgur.com/lvxSG.png –

+1

Bello! Lo sto verificando ora. Purtroppo questa domanda è chiusa, altrimenti suggerirei di aggiungerla come risposta. – djq

risposta

20

Here è possibile trovare un elenco di strumenti Python-to-UML. Quella denominata GraphModels in django-extensions (PyPI) potrebbe coprire ciò che stai cercando.

+0

Per quanto ne so, GraphModels è solo per UML di modelli e non per l'app completa. – yeaske

-1

È possibile utilizzare django-extension per generare i modelli di app il database i.e. e inoltre è possibile generare applicazioni di generazione UML.

16

È possibile utilizzare l'app django-extensions per la generazione di visualizzazioni del modello.

setting.py

INSTALLED_APPS = (
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.sites', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 

    '...', 

    'django_extensions', 
    'django.contrib.admin', 
    # Uncomment the next line to enable admin documentation: 
    # 'django.contrib.admindocs', 
) 

dare questo comando nel terminale

python manage.py graph_models -a -o myapp_models.png 

Questo genererà un file PNG di nome myapp_models.png. Avrà visualizzato l'immagine dei modelli. Più documentazione può essere trovata here.

+1

Questo è utile in generale, ma sono interessato a consigli su come scegliere più dei semplici modelli. – djq

3

Oggi mi sono imbattuto in questo problema e ho trovato django-dia. Sembra buono, se ti piace Dia!

Problemi correlati