Skip to main content

Easily bundle example data with your django apps.

Project description

Easily bundle example data with your django apps.

Install

$ pip install django_addexampledata

Setup

Add 'django_addexampledata' to INSTALLED_APPS.

Usage

django_addexampledata provides two Django management commands:

addexampledata

Finds all apps with an exampledata.py, and runs appname.exampledata.add_exampledata() on these apps. See the howto below for more info.

createexampleuser

Create an example user. See --help for the User attributes that can be set. Example:

python manange.py createexampleuser grandma --is-superuser

creates a superuser named grandma with password set to test.

addexampledata howto

Add exampledata.py to the root of your Django app (in the same directory as models.py). Add an add_exampledata function to this module. Your exampledata.py may look something like this:

from models import Page

def add_exampledata():
    aboutus = Page.objects.create(title="About us",
                                  body="Hello cruel world")
    contactinfo = Page.objects.create(title="Contact info",
                                      body="Coming soon.",
                                      parent=aboutus)

As long as your Django app is in INSTALLED_APPS, <appname>.exampledata.add_exampledata is run each time you run:

python manage.py addexampledata

addexampledata on specific apps

You can specify the apps that you want to add example data for as arguments for the command. Example:

python manage.py addexampledata myapp myotherapp

addexampledata adds the same data each time it runs!

You can solve this in two ways:

  1. (reccommended) Add a make target or something similar (we use a Fabric action) to reset your example database and re-run addexampledata. Use this action whenever you change/add models or exampledata.

  2. Check for existing items in add_exampledata() before inserting new data.

Project details


Release history Release notifications | RSS feed

This version

1.0

Download files

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

Source Distribution

django_addexampledata-1.0.tar.gz (3.0 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