This app attempts to provide a generic category system that multiple apps could use. It uses MPTT for the tree storage and provides a custom admin for better visualization (copied and modified from feinCMS).
Find a file
2011-08-29 06:39:00 -04:00
categories Fixes a bug trying to set active on decendants before object is saved. 2011-08-29 06:39:00 -04:00
doc_src Updated and rendered docs. 2011-08-02 13:46:21 -04:00
docs Re-rendered the docs to reflect 0.8 2011-08-22 09:54:45 -04:00
editor Refactored the editor to become Django 1.1.1 compatible and some PEP8 formatting. 2011-08-19 10:04:18 -04:00
example Enabled new registry in the example app for testing. 2011-05-16 08:58:05 -04:00
.gitignore Ignoring the example/media/ directory 2011-08-01 09:13:30 -04:00
CREDITS.txt Filled out all contributors 2011-05-07 20:39:34 -04:00
LICENSE.txt Added in support materials 2009-07-07 07:31:34 -04:00
MANIFEST.in Pruning the example project 2011-08-19 10:56:58 -04:00
NOTICES.txt Added in support materials 2009-07-07 07:31:34 -04:00
README.rst Added to the README 2011-08-22 09:52:11 -04:00
requirements.txt Updated the requirements to django-mptt 0.4.2 2010-12-10 06:54:55 -05:00
setup.py Updated some of the setup info. 2011-05-12 06:58:46 -04:00

Django Categories grew out of our need to provide a basic hierarchical taxonomy management system that multiple applications could use independently or in concert.

As a news site, our stories, photos, and other content get divided into "sections" and we wanted all the apps to use the same set of sections. As our needs grew, the Django Categories grew in the functionality it gave to category handling within web pages.

New in 0.8
==========

**Added an active field**
	As an alternative to deleting categories, you can make them inactive.
	
	Also added a manager method ``active()`` to query only the active categories and added Admin Actions to activate or deactivate an item.

**Improved import**
	Previously the import saved items in the reverse order to the imported file. Now them import in order.

New in 0.7
==========

**Added South migrations**
	All the previous SQL scripts have been converted to South migrations.

**Can add category fields via management command (and South)**
	The new ability to setup category relationships in ``settings.py`` works fine if you are starting from scratch, but not if you want to add it after you have set up the database. Now there is a management command to make sure all the correct fields and tables are created.

**Added an alternate_url field**
	This allows the specification of a URL that is not derived from the category hierarchy.

**New JAVASCRIPT_URL setting**
	This allows some customization of the ``genericcollections.js`` file.

**New get_latest_objects_by_category template tag**
	This will do pretty much what it says.


New in 0.6
==========

**Class-based views**
	Works great with Django 1.3 or `django-cbv <http://pypi.python.org/pypi/django-cbv>`_

**New Settings infrastructure**
	To be more like the Django project, we are migrating from individual CATEGORIES_* settings to a dictionary named ``CATEGORIES_SETTINGS``\ . Use of the previous settings will still work but will generate a ``DeprecationError``\ .

**The tree's initially expanded state is now configurable**
	``EDITOR_TREE_INITIAL_STATE`` allows a ``collapsed`` or ``expanded`` value. The default is ``collapsed``\ .

**Optional Thumbnail field**
	Have a thumbnail for each category!

**"Categorize" models in settings**
	Now you don't have to modify the model to add a ``Category`` relationship. Use the new settings to "wire" categories to different models.

Features of the project
=======================

**Multiple trees, or a single tree**
	You can treat all the records as a single tree, shared by all the applications. You can also treat each of the top level records as individual trees, for different apps or uses.

**Easy handling of hierarchical data**
	We use `Django MPTT <http://pypi.python.org/pypi/django-mptt>`_ to manage the data efficiently and provide the extra access functions.

**Easy importation of data**
	Import a tree or trees of space- or tab-indented data with a Django management command.

**Metadata for better SEO on web pages**
	Include all the metadata you want for easy inclusion on web pages.

**Link uncategorized objects to a category**
	Attach any number of objects to a category, even if the objects themselves aren't categorized.

**Hierarchical Admin**
	Shows the data in typical tree form with disclosure triangles

**Template Helpers**
	Easy ways for displaying the tree data in templates:

	**Show one level of a tree**
		All root categories or just children of a specified category
	
	**Show multiple levels**
		Ancestors of category, category and all children of category or  a category and its children

Contributors
============

* Corey Oordt      http://github.com/coordt
* Erik Simmler     http://github.com/tgecho
* Martin Ogden     http://github.com/martinogden
* Ramiro Morales   http://github.com/ramiro
* Evan Culver      http://github.com/eculver
* Andrzej Herok    http://github.com/aherok
* Jonathan Hensley 
* Justin Quick     http://github.com/justquick
* Josh Ourisman    http://github.com/joshourisman
* Jose Soares      http://github.com/josesoa