Django package that handles exporting of data
Project description
Django Rest Framework data export package that handles export/rendering to JSON, CSV, XLS, and HTML
Installation
pip install unicef-rest-export
Setup
Add unicef_rest_export to INSTALLED_APPS in settings
INSTALLED_APPS = [
...
'unicef_rest_export',
]
Usage
A sample model view;
class AuthorView(ExportView):
queryset = Author.objects.all()
serializer_class = serializers.AuthorSerializer
A sample model viewset;
class AuthorViewSet(ExportViewSet):
queryset = Author.objects.all()
serializer_class = serializers.AuthorSerializer
To override or limit the renderers allowed, add EXPORT_RENDERERS to settings. The current default is;
EXPORT_RENDERERS = (
"unicef_rest_export.renderers.ExportHTMLRenderer",
"unicef_rest_export.renderers.ExportCSVRenderer",
"unicef_rest_export.renderers.ExportJSONRenderer",
"unicef_rest_export.renderers.ExportExcelRenderer",
)
The following is a sample of transforming data;
class AuthorTransformView(ExportView):
queryset = Author.objects.all()
serializer_class = serializers.AuthorSerializer
def transform_books(self, data):
return [d["name"] for d in data]
def transform_dataset(self, dataset):
dataset.add_formatter("books", self.transform_books)
return dataset
Contributing
Environment Setup
To install the necessary libraries
$ make install
Coding Standards
See [PEP 8 Style Guide for Python Code](https://www.python.org/dev/peps/pep-0008/) for complete details on the coding standards.
To run checks on the code to ensure code is in compliance
$ make lint
Testing
Testing is important and tests are located in tests/ directory and can be run with;
$ make test
Coverage report is viewable in build/coverage directory, and can be generated with;
Project Links
Continuos Integration - https://circleci.com/gh/unicef/unicef-rest-export/tree/develop
Source Code - https://github.com/unicef/unicef-rest-export
Thanks to
[django-rest-pandas](https://github.com/wq/django-rest-pandas) as a lot of the code was borrowed from that package.
Project details
Release history Release notifications | RSS feed
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
File details
Details for the file unicef_rest_export-0.6.tar.gz
.
File metadata
- Download URL: unicef_rest_export-0.6.tar.gz
- Upload date:
- Size: 10.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.9.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1a2972630d99dce927becaa70e7fb785116401f80beff77b13a5ecfc7139d983 |
|
MD5 | bb6560034cca8d941ee523d5dcc5c9a7 |
|
BLAKE2b-256 | 2b82309f4226f458d4a54653836c0367c1d8761b07424c80091d499d5b3b4325 |
File details
Details for the file unicef_rest_export-0.6-py2.py3-none-any.whl
.
File metadata
- Download URL: unicef_rest_export-0.6-py2.py3-none-any.whl
- Upload date:
- Size: 8.9 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.9.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 67d07341b586de51f6d5ef3ed00599bbe49ae34c4ccc1a0934fcbb839c686faa |
|
MD5 | e84643a2e7b905e637b2d9f628b3d304 |
|
BLAKE2b-256 | 133daa64be7a1fa2d098f9a0b6e694180aa1042d299437cf28bb0a6c95855eab |