Skip to main content

Django Admin Totals, add totals to your columns in Django admin.

Project description

Django Admin Totals

Module to show totals in Django Admin List.

codecov Build Status

Installation

virtualenv .
source bin/activate
pip install admin-totals

Or

pip install git+https://github.com/douwevandermeij/admin-totals.git

Usage

In settings.py

INSTALLED_APPS = [
    'admin_totals',
]

In admin.py:

from admin_totals.admin import ModelAdminTotals
from django.contrib import admin
from django.db.models import Sum, Avg
from django.db.models.functions import Coalesce

@admin.register(MyModel)
class MyModelAdmin(ModelAdminTotals):
    list_display = ['col_a', 'col_b', 'col_c']
    list_totals = [('col_b', lambda field: Coalesce(Sum(field), 0)), ('col_c', Avg)]

Make sure to at least have the columns of list_totals in list_display.

Tests

python runtests.py

Contributing

Please make sure to run the following commands before pushing and making a PR:

pip install -r requirements/test-ci.txt
isort --recursive admin_totals tests
flake8

isort will sort the imports and flake8 will lint the code. Please fix any errors before committing. Also, make sure to write passing tests.

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

admin-totals-1.0.1.tar.gz (6.0 kB view hashes)

Uploaded Source

Built Distributions

admin_totals-1.0.1-py3-none-any.whl (25.1 kB view hashes)

Uploaded Python 3

admin_totals-1.0.1-py2-none-any.whl (25.1 kB view hashes)

Uploaded Python 2

Supported by

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