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


Release history Release notifications

This version
History Node

1.2.0

History Node

1.1.0

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
nicedjango-1.2.0-py2.py3-none-any.whl (29.0 kB) Copy SHA256 hash SHA256 Wheel 2.7 Nov 24, 2014
nicedjango-1.2.0.tar.bz2 (23.4 kB) Copy SHA256 hash SHA256 Source None Nov 24, 2014
nicedjango-1.2.0.tar.gz (28.6 kB) Copy SHA256 hash SHA256 Source None Nov 24, 2014
nicedjango-1.2.0.zip (46.9 kB) Copy SHA256 hash SHA256 Source None Nov 24, 2014

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page