skip to navigation
skip to content

Not Logged In

django-model-report 0.0.6

Django reports integrated with highcharts.

Latest Version: 0.2.1

Django Model Report
===================

django reports integrated with highcharts


Demo
====

http://django-model-report.herokuapp.com


Installation
============

* Add the ``model_report`` directory to your Python path.

* Add ``model_report`` to your ``INSTALLED_APPS`` setting.

* Create file "reports.py" within any application directory (just like admin.py).

* Edit the file "reports.py" and register your reports like this:

        from app.models import Browser
        from model_report.report import reports, ReportAdmin

        class BrowserReport(ReportAdmin):
            title = _('Browser with Inline Downloads')
            model = Browser
            fields = [
                'name',
            ]
            list_order_by = ('name',)
            type = 'report'

        reports.register('browser-report', BrowserReport)

* Activate your reports calling the autodiscover in ``urls.py`` (just like admin.py).

        from model_report import report
        report.autodiscover()

* Add reports urls

    urlpatterns = patterns('',
        ...
        (r'', include('model_report.urls')),
        ...
    )


Configuration
=============

Extend your reports ``from model_report.report import ReportAdmin``

    class ReportExample(ReportAdmin):
        pass

* Atributes

    ``title``:

    Title of the report.

    ``template_name``:

    Template file name to render the report.

    ``exports``:

    List of allowed export formats.

    Example:

        exports = ('excel', 'pdf')

    ``model``:

    Django model

    ``fields``:

    List of model fields to be listed.

    ``list_filter``:

    List of fields to filter data.

    ``list_order_by``:

    List of fields to order data.

    ``list_group_by``:

    List of fields to group data.

    ``type``:

    "report" for only report.

    "chart" for report and show chart graphic results.

    ``group_totals``:

    Dictionary with field name as key and function to calculate their values.
    This row is displayed after each group as their totals.

    Example:

        group_totals = {
            'men': sum_column,
            'women': sum_column
        }

    ``report_totals``:

    Dictionary with field name as key and function to calculate their values.
    This row is displayed at the end of the report as the totals of all results.

    Example:

        report_totals = {
            'men': avg_column,
            'women': avg_column
        }

    ``override_field_values``:

    Dictionary with field name as key and function to parse their original values.


    Example:

        override_field_values = {
            'men': men_format,
            'women': women_format
        }

    ``override_field_formats``:

    Dictionary with field name as key and function to parse their value after ``override_field_values``.


    Example:

        override_field_formats = {
            'men': men_format,
            'women': women_format
        }

    ``override_field_labels``:

    Dictionary with field name as key and function to parse the column label.


    Example:

        override_field_labels = {
            'men': men_label
        }

    ``list_serie_fields``:

    List of fields to group by results in chart.

    ``chart_types``:

    List of highchart types.

    Example:

        chart_types = ('pie', 'column')

    ``inlines``:

    List of other's Report related to the main report.


Contribute
==========

Clone the repo and help to be better this app :)
 
  • Downloads (All Versions):
  • 32 downloads in the last day
  • 456 downloads in the last week
  • 1454 downloads in the last month