Skip to main content

Pretty-print Django QuerySets.

Project description

=====
Django Tabulate
=====

Django Tabulate is a simple app on top of Python tabulate, but for Django querysets.
It allows us to to Pretty-print Django QuerySets

Requirements
------------
* **Python**: 2.7, 3.5
* **Django**: 1.8, 1.11
* **tabulate**: 0.8.1

Tested on these, but should still work on all actively supported Python and Django versions.

Installation
------------

Install using pip:

.. code-block:: sh

pip install django-tabulate


Usage
-----

You can use it as a function:


.. code-block:: python

from myapp.models import MyModel
from django_tabulate import tabulate_qs
print tabulate_qs(MyModel.objects.all())
+------+----------+
| id | name |
|------+----------|
| 1 | Python |
| 2 | Django |
| 3 | Tabulate |
+------+----------+

Or as a QuerySet mixin:

.. code-block:: python

#models.py
from django.db import models
from django_tabulate import TabulateMixin

class MyModelQuerySet(models.QuerySet, TabulateMixin):
pass

class MyModel(models.Model):
name = models.CharField(max_length=255)

objects = MyModelQuerySet.as_manager()

#then in the shell
from myapp.models import MyModel
print MyModel.objects.all().tabulate()

Settings
-----------

You can override all default tabulate settings via `TABULATE_DEFAULTS`

.. code-block:: python
TABULATE_DEFAULTS = {
'tablefmt': 'psql'
}

For a complete list of all tabulate options take a look at
https://bitbucket.org/astanin/python-tabulate/overview

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-tabulate-0.1.1.zip (8.5 kB view hashes)

Uploaded Source

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