GammaScience/django-dag
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
Django DAG
----------
.. Note:
This is an unoffical 1.5.0 branch for Python 3 and Django2.2+ compatibility,
every thing on this branch except the version number has either been pulle
by elapso/django-dag or is an outstanding PR.
(With the exception of the NodeOrdering, which iwll become a PR
once we have unittests )
Ths version number has been bumped purely to aid the installation tools,
and may not have all the features that the upstream 1.5.0 ends up with
Django-dag is a small reusable app which implements a Directed Acyclic Graph.
Usage
.....
Django-dag uses abstract base classes, to use it you must create your own
concrete classes that inherit from Django-dag classes.
The `dag_test` app contains a simple example and a unit test to show
you its usage.
Example::
class ConcreteNode(node_factory('ConcreteEdge')):
"""
Test node, adds just one field
"""
name = models.CharField(max_length = 32)
class ConcreteEdge(edge_factory(ConcreteNode, concrete = False)):
"""
Test edge, adds just one field
"""
name = models.CharField(max_length = 32, blank = True, null = True)
Tests
.....
Unit tests can be run with just django installed at the base directory by running
`python manage.py test`