CKAN Organization hierarchy - templates and configuration
Project description
ckanext-hierarchy - Organization hierarchy for CKAN
Organizations can be arranged into a tree hierarchy.
This new hierarchical arrangement of organizations is displayed using templates in this extension, instead of the usual list:
Provides a new field on the organization edit form to select a parent organization:
When viewing an organization you see its context within the tree in the side bar. In addition you can widen search of the organization's datasets to include datasets in sub-organizations too:
Technical details
Templates:
- /organization - now shows the organization hierarchy instead of list
- /organization/about/{id} - now also shows the relevant part of the hierarchy
Snippets (used by hierarchy and ckanext-scheming):
- /scheming/form_snippets/org_hierarchy.html
In order to make hierarchy work with ckanext-scheming you need to enable hierarchy and then use corresponding form_snippet in your org_schema. For example, you may add next field:
{
"field_name": "not_used",
"label": "Parent organization",
"display_snippet": null,
"form_snippet": "org_hierarchy.html",
"validators": "ignore_missing"
}
Optionally one could also specify a full name and leave the field 'title' for the short name or acronym (more convenient for display).
{
"field_name": "longname",
"label": "Full Name",
"validators": "ignore_missing unicode",
"form_snippet": "large_text.html",
"form_attrs": {"data-module": "slug-preview-target"},
"form_placeholder": "My Organization full name",
"display_snippet": null
}
TODO:
- make the trees prettier with JSTree
Requirements
This extension requires CKAN v2.8 or later.
Installation
To install ckanext-hierarchy:
-
Activate your CKAN virtual environment, for example:
. /usr/lib/ckan/default/bin/activate
-
Install the ckanext-hierarchy Python package into your virtual environment:
cd /usr/lib/ckan/default/src pip install -e "git+https://github.com/davidread/ckanext-hierarchy.git#egg=ckanext-hierarchy" pip install -r ckanext-hierarchy/requirements.txt
-
Add
hierarchy
to theckan.plugins
setting in your CKAN config file (by default the config file is located at/etc/ckan/default/production.ini
). -
Restart CKAN. For example if you've deployed CKAN with Apache on Ubuntu:
sudo service apache2 reload
Config settings
None at present
Tests
To run the tests, do::
pytest --ckan-ini=test.ini ckanext/hierarchy/tests
Licence and copyright
This module is openly licensed with AGPLv3 - see LICENSE file.
Copyright belongs to commit authors. Commits 2013-2017 by @davidread are Crown Copyright.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for ckanext_hierarchy-1.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2204239a83c9457f6d905c0da39089fca18633aeac89ccc5248a1234e9af888f |
|
MD5 | 730abcd0dad6af4734b3c0004f899a84 |
|
BLAKE2b-256 | b75f94c985d5ada5827c38dd76bcb8021bf7851759c00bf59a910325ee020877 |