Simple topic trees (hierarchies) for Django.
Python
Latest commit f3565bb Aug 29, 2010 @malcolmt Future-proof test methods: failUnless*() --> assert*().
In Python 2.7 and Python 3.x, the unittest2 module deprecates the
failUnless* method names. So this is a preemptive change to use the
assert* versions of the names, even thought I find them less naturally
descriptive.
Failed to load latest commit information.
acacia Future-proof test methods: failUnless*() --> assert*(). Aug 29, 2010
docs
testing Updated test settings file to match Django 1.2. format. Jun 6, 2010
.gitignore
AUTHORS.txt Tidied up the top-level directory's documentation. Jul 11, 2009
LICENSE.txt Small updates to auxiliary documentation. Jun 6, 2010
README.rst Edits and markup fixes in the README file. Jun 21, 2010
TODO Updated TODO list in light of recent progress. Jul 5, 2010
pylint.rc Teach pylint about unittest's setUp and tearDown names. Jun 16, 2010

README.rst

Acacia — Simple Topic Trees For Django

Acacia is a small Django application that provides hierarchical topic naming. Other applications can use the topic trees to categorise and retrieve objects using human-readable names.

Full documentation is available in the docs/ directory of the source. It is marked up using the Sphinx documentation system — restructured text plus some extras for inter-file connections. Running make html in the docs directory is the simplest way to create the HTML version.

Dependencies

This code should run on Python 2.4 or later and Django 1.2 [*] or later.

The underlying tree implementation is provided by django-mptt. Any project using django-acacia, also needs to include django-mptt.

[*]To check: is there a strict 1.2 requirement, or does it also work with Django 1.1?

Testing

Acacia can be tested with the standard Django testing framework. That is, any run of django-admin.py test (or manage.py test) in a project that has Acacia installed will execute the tests.

In addition, to make testing in isolation easier, the testing/runtests.py script is provided. This removes the need to install Acacia into a fake Django project merely to run the tests during development work. Execute the script from anywhere and it will run through all of Acacia’s unittests in isolation.