Efficient Materialized Path tree implementation for Django 1.0+
Django-treebeard is a library that implements efficient tree implementations for the Django Web Framework 1.0+.
It includes 3 different tree implementations: Adjacency List, Materialized Path and Nested Sets. Each one has
it's own strength and weaknesses but share the same API, so it's easy to switch between implementations.
Django-treebeard uses Django Model Inheritance with abstract classes to let you define your own models.
To use django-treebeard:
- Download a release from the treebeard download page or get a development version from the treebeard mercurial repository;
- Run python setup.py install;
- Add 'treebeard' to the INSTALLED_APPS section in your django settings file;
- Create a new model that inherits from one of django-treebeard's abstract tree models: mp_tree.MP_Node (materialized path), ns_tree.NS_Node (nested sets) or al_tree.AL_Node (adjacency list);
- Run python manage.py syncdb.
Author:
--------
Gustavo Picon
- Developed at devel:languages:python:django
- Sources inherited from project openSUSE:Factory
-
2
derived packages
- Download package
-
Checkout Package
osc -A https://api.opensuse.org checkout openSUSE:Factory:Rebuild/python-django-treebeard && cd $_
- Create Badge
Source Files
Filename | Size | Changed |
---|---|---|
django-treebeard-4.5.1.tar.gz | 0000784384 766 KB | |
python-django-treebeard.changes | 0000003766 3.68 KB | |
python-django-treebeard.spec | 0000002846 2.78 KB |
Revision 2 (latest revision is 5)
- Upgrade to 4.5.1: - Removed unnecessary default in MP's depth field. - Add support for custom primary key fields with custom names. - Add support for Python 3.9. - Add support for MSSQL 2019. - Add Code of conduct - Removed outdated Sqlite workaround code - Remove last remains of Python 2.7 code - Use Pytest-django and fixtures for testing - Implement a non-destructive path-fixing algorithm for MP_Node.fix_tree. - Ensure post_save is triggered after the parent node is updated in MP_AddChildHandler. - Fix static URL generation to use static template tag instead of constructing the URL manually. - Declare support for Django 2.2, 3.0 and 3.1. - Drop support for Django 2.1 and lower. - Drop support for Python 2.7 and Python 3.5. - Increase performance for MoveNodeForm when using large trees. - Remove upstreamed patches - merged_50489e63.patch - merged_56121dca.patch - merged_d6f117f0.patch
Comments 0