Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 datatools
Octocat-spinner-32 tests
Octocat-spinner-32 .gitignore
Octocat-spinner-32 LICENSE
Octocat-spinner-32 README.rst
Octocat-spinner-32 runtests.py
Octocat-spinner-32 setup.py
README.rst

django-data-tools

A set of utilities and improvements for managing data (fixtures specifically) in Django.

Install

INSTALLED_APPS = (
    # ...
    'datatools',
)

Commands

dumpdata

An improved version of the manage.py dumpdata command:

  • Adds a --limit option to specify the maximum number of objects per model to fetch.
  • Adds a --sort option to specify ascending or descending order for serialization.
  • Automatically follows the dependency graph for ForeignKeys and ManyToManyFields.
# Retrieve the latest 10000 thread objects with all their required dependencies
python manage.py dumpdata forums.thread --limit=10000 --sort=desc

Utilities

RangeQuerySetWrapper

Efficient iteration over a large collection of database objects, using a standard range pattern on the primary key.

from datatools.query import RangeQuerySetWrapper

qs = RangeQuerySetWrapper(Model.objects.all(), limit=100000)
for obj in qs:
    print "Got %r!" % obj
Something went wrong with that request. Please try again.