python3-django-tree-queries
Adjacency-list trees for Django (Python3 version)
Description
Query Django model trees using adjacency lists and recursive common table expressions. Supports PostgreSQL, sqlite3 and MariaDB and MySQL. Features and limitations: * Supports only integer and UUID primary keys (for now).
* Allows specifying ordering among siblings.
* Uses the correct definition of depth, where root nodes have a depth of
zero.
* The parent foreign key must be named "parent" at the moment.
* The fields added by the common table expression always are tree_depth,
tree_path and tree_ordering. The names cannot be changed. tree_depth is an
integer, tree_path an array of primary keys and tree_ordering an array of
values used for ordering nodes within their siblings.
* Besides adding the fields mentioned above the package only adds queryset
methods for ordering siblings and filtering ancestors and descendants.
* Little code, and relatively simple when compared to other tree management
solutions for Django. No redundant values so the only way to end up with
corrupt data is by introducing a loop in the tree structure (making it a
graph). The TreeNode abstract model class has some protection against this.
* Supports only trees with max. 50 levels on MySQL/MariaDB, since those
databases do not support arrays and require a maximum length for the
tree_path and tree_ordering upfront.
This package contains the Python 3 version of the library.Upload more screenshots
Please help extend the collection of screenshots. Just make a screenshot and upload it here. You don't need to register or anything.
Upload a screenshotHint: upload an image here from your clipboard with Ctrl-V
Homepage
https://github.com/feincms/django-tree-queries
Install this software package
If the package is available for the distribution you are currently using on your computer then install the software by clicking on…
Install python3-django-tree-queries