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
File details
Details for the file django-admin-csvexport2-2.3.tar.gz
.
File metadata
- Download URL: django-admin-csvexport2-2.3.tar.gz
- Upload date:
- Size: 17.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 98009c62c6dcb46b047f91e78b3ce183fabcd6c6451b443e525152f9b7e6602a |
|
MD5 | 944d41aa00ffff1ba460ca36c541d0f6 |
|
BLAKE2b-256 | 2488d365406b3c4e55514301a86e244eba7b44d63828f315fa1d232668a922a4 |