diff options
author | Evgeny Fadeev <evgeny.fadeev@gmail.com> | 2010-12-16 03:28:17 -0500 |
---|---|---|
committer | Evgeny Fadeev <evgeny.fadeev@gmail.com> | 2010-12-16 03:28:17 -0500 |
commit | 7a5172a6113a9c52ba8e7ceb42a751d79dface3a (patch) | |
tree | 0ed0cd815ea33a09559b5bb7fd056f6f729559c1 | |
parent | d70190485a65e8c9b4b2ae235a8515aa53327f23 (diff) | |
download | askbot-7a5172a6113a9c52ba8e7ceb42a751d79dface3a.tar.gz askbot-7a5172a6113a9c52ba8e7ceb42a751d79dface3a.tar.bz2 askbot-7a5172a6113a9c52ba8e7ceb42a751d79dface3a.zip |
added commands dump_forum and load_forum
-rw-r--r-- | askbot/management/commands/dump_forum.py | 16 | ||||
-rw-r--r-- | askbot/management/commands/load_forum.py | 14 |
2 files changed, 30 insertions, 0 deletions
diff --git a/askbot/management/commands/dump_forum.py b/askbot/management/commands/dump_forum.py new file mode 100644 index 00000000..95116ee2 --- /dev/null +++ b/askbot/management/commands/dump_forum.py @@ -0,0 +1,16 @@ +from django.core import management +from django.core.management.base import BaseCommand + +class Command(BaseCommand): + help = """Dumps askbot forum data into the file for the later use with "load_forum" + +usage: python manage.py dump_forum > somefile.json + +.json file extension is mandatory +""" + def handle(self, *args, **options): + management.call_command( + 'dumpdata', + exclude = ('contenttypes',), + indent = 4 + ) diff --git a/askbot/management/commands/load_forum.py b/askbot/management/commands/load_forum.py new file mode 100644 index 00000000..f0b636df --- /dev/null +++ b/askbot/management/commands/load_forum.py @@ -0,0 +1,14 @@ +from django.core import management +from django.db.models import signals +from django.core.management.base import BaseCommand +from askbot import models + +class Command(BaseCommand): + args = '<data file>' + help = 'Loads askbot forum data from the dump file obtained with command "dump_forum"' + def handle(self, *args, **options): + #need to remove badge data b/c they are aslo in the dump + models.BadgeData.objects.all().delete() + #turn off the post_save signal so than Activity can be copied + signals.post_save.receivers = [] + management.call_command('loaddata', args[0]) |