escalant3 / django-graphize

A command to generate graphical data from sql data

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Graphize is a django application that adds a new functionality
to the manage.py script that exports the selected models from sql
to graphical format, such as a Pajek file or a Neo4j REST database.

Disclaimer:
This software is under hard development.

Configuration:
Just add the graphize app to your settings.py file and create a
graphize_settings.py in the root of your django project directory.

You may include in this file all the models you want to graphize in
a dictionary called "graph_structure". Each element of the dictionary
is a tuple that in this first version just includes an element with
another dictionary that specifies aditional fields that we want to 
add to a specific element.

A sample code could be:

from app1.models import Model1, Model2
from app2.models import ModelA, ModelB

MODEL_1_EXTRA_DATA = {'type': 'model1'}
MODEL_1_BLACK_LIST = ('unwanted_field1', 'unwanted_field2')

graph_structure = {Model1: (MODEL_1_EXTRA_DATA, MODEL_1_BLACK_LIST),
                    Model2: ({},()),
                    ModelA: ({},()),
                    ModelB: ({},()),
                    }

Usage: python manage.py graphize OUTPUT_TYPE OUTPUT

Where OUTPUT_TYPE can be:
- neo4j: Neo4j Graph Database
- pajek: .net pajek file
- sylva: sylva format file

and OUTPUT is the destination server/file.

Example:
python manage.py graphize neo4j http://localhost:9999
python manage.py graphize pajek myfile.net

About

A command to generate graphical data from sql data


Languages

Language:Python 100.0%