46 lines
1.1 KiB
Python
Executable file
46 lines
1.1 KiB
Python
Executable file
#!/usr/bin/python
|
|
|
|
# boiler plate
|
|
import os, sys
|
|
|
|
ietf_path = os.path.abspath(os.path.join(os.path.dirname(os.path.abspath(__file__)), '../../ietf'))
|
|
|
|
sys.path.insert(0, ietf_path)
|
|
|
|
from django.core.management import setup_environ
|
|
import settings
|
|
setup_environ(settings)
|
|
|
|
# script
|
|
from django.core.serializers import serialize
|
|
from django.db.models import Q
|
|
|
|
def output(name, qs):
|
|
try:
|
|
f = open(os.path.join(os.path.dirname(os.path.abspath(__file__)), "fixtures/%s.xml" % name), 'w')
|
|
f.write(serialize("xml", qs, indent=4))
|
|
f.close()
|
|
except:
|
|
from django.db import connection
|
|
from pprint import pprint
|
|
pprint(connection.queries)
|
|
raise
|
|
|
|
# pick all name models directly out of the module
|
|
objects = []
|
|
|
|
import ietf.name.models
|
|
for n in dir(ietf.name.models):
|
|
if n[:1].upper() == n[:1] and n.endswith("Name"):
|
|
model = getattr(ietf.name.models, n)
|
|
if not model._meta.abstract:
|
|
objects.extend(model.objects.all())
|
|
|
|
|
|
import ietf.doc.models # FIXME
|
|
objects += ietf.doc.models.StateType.objects.all()
|
|
objects += ietf.doc.models.State.objects.all()
|
|
|
|
output("names", objects)
|
|
|