A Django-based implementation of the OpenGovernment context, compliant with the Popolo data specifications.
Welcome to the documentation for django-popolo!
django-popolo is a django-based implementation of the Popolo's open government data specifications.
It is developed as a Django reusable app to be deployed directly within Django projects.
It will allow web developers using it to manage and store data according to Popolo's specifications.
The standard sql-oriented Django ORM will be used.
From release 1.2.0, django-popolo includes classes that extend the model, although compatibility with the standard is kept.
Release 2.0.0 introduces a change in how Sources and Links are referred to, that breaks compatibility with the popit importer.
Release 3.0.0 main focuses have been to keep up with latest Django
versions and to "modernize" the code base, adopting latest Python features (like type hinting),
and doing some serious housekeeping. Python 2 is no longer supported.
This release also implements a lot of new models which are not part of the Popolo specification (mildly out of scope),
but we needed them in some projects which make use this package. Those new models can be safely ignored, and they could
also be removed in the future, as we are considering the option of entirely decoupling them from
See the CHANGELOG.md file for more details.
django-popolo as a third party app within a django project,
you need to add it to the django project's requirements.txt.
You can do this from GitHub in the usual way, or using the
django-popolo package on PyPI.
Notes on mysociety's fork
mysociety/django-popolo is a fork of this project where integer IDs are used instead of slugs.
Our packages, since version 1.1 also uses numerical ids as primary keys for all entities.
Slugs are available as non-primary fields, for the 4 main classes (
Slugs are used through the
Permalinkable behavior, that adds the
slug field to the class, populating it according to rules defined in each class.
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size django_popolo-3.0.3-py3-none-any.whl (37.9 kB)||File type Wheel||Python version py3||Upload date||Hashes View|
|Filename, size django-popolo-3.0.3.tar.gz (34.2 kB)||File type Source||Python version None||Upload date||Hashes View|
Hashes for django_popolo-3.0.3-py3-none-any.whl