Django-admin-action to export items as csv-formatted data.
Project description
Description
Django-admin-csvexport is a django-admin-action, that allows you to export the items of your django-admin changelist as csv-formatted data.
Features
selectable model-fields
related models included
customizable csv-format
view or download csv-data
Installation
Install from pypi.org:
pip install django-admin-csvexport
Add csvexport to your installed apps:
INSTALLED_APPS = [ 'csvexport', ... ]
Add csvexport to the actions of your modeladmin:
from csvexport.actions import csvexport class MyModelAdmin(admin.ModelAdmin): ... actions = [csvexport]
Configuration
The following settings determine the depth of the model references and the value to display for empty fields:
CSV_EXPORT_REFERENCE_DEPTH = 3 CSV_EXPORT_EMPTY_VALUE = ''
The following settings define the csv-format to be used. The default values meet the unix standard csv-format:
CSV_EXPORT_DELIMITER = ',' CSV_EXPORT_ESCAPECHAR = '' CSV_EXPORT_QUOTECHAR = '"' CSV_EXPORT_DOUBLEQUOTE = True CSV_EXPORT_LINETERMINATOR = r'\n' CSV_EXPORT_QUOTING = 'QUOTE_ALL'
For the newline escape sequence use a raw-string.
For CSV_EXPORT_QUOTING
use the name of one of these csv module
constants:
The csv-format can also be adjusted by the formular rendered by the csvexport admin-action. If there is no need to adjust the csv-format on each export use:
CSV_EXPORT_FORMAT_FORM = False
The formular can also be extended by a checkbox which allows to filter the resulting csv rows to be unique. Therefore use:
CSV_EXPORT_UNIQUE_FORM = True
With the following additional parameters for your ModelAdmin you could limit the fields offered by the export form and choose them to be preselected:
class MyModelAdmin(admin.ModelAdmin): csvexport_export_fields = [ 'field_a', 'field_b, 'relational_field.field_a_on_related_model', ... ] csvexport_selected_fields = [ 'field_a', 'field_b, 'relational_field.field_a_on_related_model', ... ]
Fields of related models could be referenced by using a dot between the
relational fields and the fields to be exported:
'relation_a.relation_b.any_field'
. Not defining
csvexport_export_fields
means all possible fields will be regarded.
The CSV_EXPORT_REFERENCE_DEPTH value could also be adjusted in modeladmin specific manner:
class MyModelAdmin(admin.ModelAdmin): csvexport_reference_depth = 2
Usage
Just use it as any django-admin-action: Select your items, choose csvexport from the admin-action-bar and go. You will be led to a formular that allows you to view or download your items as csv-data.
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
Hashes for django-admin-csvexport-2.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | fe59da74dee9dfde682648eed7dd3be617427264998d249702a78e5f5c25f437 |
|
MD5 | 3dd581ae75e79069c16fffa4e932db04 |
|
BLAKE2b-256 | 95b9eb05b470b79ea410fb399fe33618a9883e5b88dd1dcea271862ced439c03 |
Hashes for django_admin_csvexport-2.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b045b4eafeda9eb2fdbed4427444d7acc1124fe8896ec4cca1af8a10ae0810c6 |
|
MD5 | 69529cf1575fdabd07cc7bb806931026 |
|
BLAKE2b-256 | ba1895a8a2c45b1423d956f166d7bcecefa56e473c5f04a1bb33a531a233e6aa |