django-fixture-generator is a reusable django application to make writing fixtures not suck.
Python
Latest commit 9dfae76 Jan 8, 2012 @alex remove invalid options
Failed to load latest commit information.
fixture_generator remove invalid options Jan 8, 2012
.gitignore Initial stab at it. Jun 11, 2010
LICENSE.txt BSD is how we roll. Jun 11, 2010
README.txt Reflow. Jul 26, 2011
runtests.py fixes for 1.4 Jan 5, 2012
setup.py Fixed #5 -- mark this as not being zip_safe Oct 13, 2010

README.txt

``django-fixture-generator``
============================

Requires Django 1.2.

 * Add ``"fixture_generator"`` to your ``INSTALLED_APPS`` setting.
 * Create a ``fixture_gen.py`` file in one of your apps.  It should look
   something like:
   
    from fixture_generator import fixture_generator
    
    from django.contrib.auth.models import User, Group
    
    @fixture_generator(User, requires=["my_app.test_groups"])
    def test_users():
        muggles, wizards = Group.objects.order_by("name")
        simon = User.objects.create(username="simon")
        adrian = User.objects.create(username="adrian")
        jacob = User.objects.create(username="jacob")
        
        simon.groups.add(wizards)
        adrian.groups.add(muggles)
        jacob.groups.add(muggles)
    
    
    @fixture_generator(Group)
    def test_groups():
        Group.objects.create(name="Muggles")
        Group.objects.create(name="Wizards")
 
 * Run ``manage.py generate_fixture my_app.test_users``.
 * Save the resulting fixture somewhere. 
 * Note that you can't create an initial_data.json (or any other format)
   directly.  If you want to redirect the generate_fixture output to a file,
   try ``python manage.py generate_fixture my_app.test_users > initial_data.txt``
   and then rename it after it's generated.