Skip to main content

A nice shortcut for group count queries with Django

Project description

Hightop.py

A nice shortcut for group count queries with Django

Visit.objects.top('browser')
# {
#   'Chrome': 63,
#   'Safari': 50,
#   'Firefox': 34
# }

Build Status

Installation

Run:

pip install hightop

Getting Started

Add a custom manager to the models where you want to use it.

from hightop import HightopQuerySet

class Visit(models.Model):
    objects = HightopQuerySet.as_manager()

And query away

Visit.objects.top('browser')

Options

Limit the results

Visit.objects.top('referring_domain', 10)

Include null values

Visit.objects.top('search_keyword', null=True)

Works with multiple groups

Visit.objects.top(['city', 'browser'])

And expressions

Visit.objects.top(Lower('referring_domain'))

And distinct

Visit.objects.top('city', distinct='user_id')

And min count

Visit.objects.top('city', min=10)

History

View the changelog

Contributing

Everyone is encouraged to help improve this project. Here are a few ways you can help:

To get started with development:

git clone https://github.com/ankane/hightop.py.git
cd hightop.py
pip install -r requirements.txt
pytest

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

hightop-0.1.1-py2.py3-none-any.whl (3.5 kB view hashes)

Uploaded Python 2 Python 3

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