Skip to main content

Automates the tasks of producing simple reports from Django models.

Project description

I was heavily inspired by http://code.google.com/p/django-reporting/. After playing
with django-reporting, I was wishing parts of it were implemented differently. And so,
django-spreadsheet-reports was born.

Although this project has been in development for a few years, it's documentation is very light.

A few features provided by this are:

* Ability to produce spreadsheet reports off of a user model by creating a reports.py in your app
directories. The contents of the reports.py should look like:

class UserStatsReport(django_spreadsheet_reports.Report):
name = 'Simple User Report'
slug = 'simple-user-report'
model = UserStats

filter_by = django_spreadsheet_reports.filters(
django_spreadsheet_reports.DateFilter('user__date_joined'),
django_spreadsheet_reports.Filter('user__date_joined', name='Days', multiple=True),
)

group_by = django_spreadsheet_reports.groupbys(
'user__date_joined',
django_spreadsheet_reports.GroupBy('campaign__user__username', name='Affiliate'),
django_spreadsheet_reports.GroupBy('program__name', name='Program'),
django_spreadsheet_reports.GroupBy('referring_url', name='Referring URL'),
django_spreadsheet_reports.GroupBy('track__track', name='Track'),
django_spreadsheet_reports.GroupBy('tour__name', name='Tour',
additional_columns=[
django_spreadsheet_reports.Column('tour__url', name='Tour URL'),
django_spreadsheet_reports.Column('tour__program__name', name='Program'),
]),
)

list_aggregates = django_spreadsheet_reports.columns(
django_spreadsheet_reports.Column(Count('id'), name='Members'),

* Exporting to CSV is built in
* Sortable columns

Requirements: Python>=3.4, Django>=1.5

Installation
=============
* pip install django-spreadsheet-reports
* Add `django_spreadsheet_reports` to your installed apps
* Add to your urls file: url(r'^reports/', include(django_spreadsheet_reports.site.urls)),
* Create a reports.py in one of your app directories, and add a Report subclass in it.
* Register your report subclass, by adding a line like this to the bottom of your reports
file: django_spreadsheet_reports.site.register(UserStatsReport)

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

django-spreadsheet-reports-0.01.4.tar.gz (16.4 kB view details)

Uploaded Source

File details

Details for the file django-spreadsheet-reports-0.01.4.tar.gz.

File metadata

File hashes

Hashes for django-spreadsheet-reports-0.01.4.tar.gz
Algorithm Hash digest
SHA256 3189179834bfb42464acf6a61a56cf11daf767ed2b33d69c489403819ea97253
MD5 12427e50c214019c4e96e51275e237b3
BLAKE2b-256 68b75a8ce48e2e5ce1c9a9c985fbc83c910bc5095569995611209e9d32fcb6b4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page