Skip to main content

Nice extensions for django

Project description

nicedjango

Nice django tools

Build Status Coveralls Documentation Status Requirements Status Downloads Latest Version Supported Python versions Supported Python implementations Development Status Wheel Status Egg Status Download format License

ModelGraph

Selective dumping and loading of only the needed model data for all objects and their related objects of one or more querysets.

This is done by

  • getting a graph of all relations between models,

  • getting all pks first in chunks,

  • dump them in an order that enables correct loading.

Examples

# show model graph parts that would be dumped and those which not:
# example for query model a1.A with relation to child a1.B(A)
./manage.py dump_graph -p -q a -r a.b
    a1-a:
               a1-a.b          to child            a1-b.pk
       excludes:
               a1-a.f          to foreign          a1-f.a
     a1-b:
               a1-b.pk         to parent           a1-a.pk
       excludes:
               a1-b.c          to child            a1-c.pk
               a1-b.e          to child            a1-e.pk

# dump all objects from a1.models.A.objects.filter() with relation a.b as compact yaml:
./manage.py dump_graph -f dump.yaml -s compact_yaml -q a.filter(pk__in=(1,2)) -r a.b
    - a1-a: [pk]
     - [1]
     - [2]
     - a1-b: [pk]
     - [2]

# load back the dumped dump.yaml
./manage.py load_graph -f dump.yaml -s compact_yaml

# by default serializing into compact csv files is enabled:
mkdir dump_folder
./manage.py dump_graph -f dump_folder -q a.filter(pk__in=(1,2)) -r a.b
#results in two files under dump_folder:
# a1-a.csv:
 a1-a:pk
 1
 2
# and a1-b.csv:
 a1-b:pk
 2

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

nicedjango-1.2.0.zip (46.9 kB view hashes)

Uploaded Source

nicedjango-1.2.0.tar.gz (28.6 kB view hashes)

Uploaded Source

nicedjango-1.2.0.tar.bz2 (23.4 kB view hashes)

Uploaded Source

Built Distribution

nicedjango-1.2.0-py2.py3-none-any.whl (29.0 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