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)
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
File details
Details for the file django-spreadsheet-reports-0.01.4.tar.gz
.
File metadata
- Download URL: django-spreadsheet-reports-0.01.4.tar.gz
- Upload date:
- Size: 16.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3189179834bfb42464acf6a61a56cf11daf767ed2b33d69c489403819ea97253 |
|
MD5 | 12427e50c214019c4e96e51275e237b3 |
|
BLAKE2b-256 | 68b75a8ce48e2e5ce1c9a9c985fbc83c910bc5095569995611209e9d32fcb6b4 |