summaryrefslogtreecommitdiff
path: root/tools/migrate_url.py
diff options
context:
space:
mode:
Diffstat (limited to 'tools/migrate_url.py')
-rwxr-xr-xtools/migrate_url.py42
1 files changed, 25 insertions, 17 deletions
diff --git a/tools/migrate_url.py b/tools/migrate_url.py
index 361ba5d..4db2e28 100755
--- a/tools/migrate_url.py
+++ b/tools/migrate_url.py
@@ -87,55 +87,63 @@ class MigrateDB(DB):
if __name__ == '__main__':
- admin = User.objects.get(username='admin')
-
db = MigrateDB()
db.connect()
+ print "loading users..."
sj_user = list(db.get_sj_user_table())
map_user = {}
for row in sj_user:
try:
user = User.objects.get(username=row['username'])
except User.DoesNotExist:
- print "ERROR in users"
+ print "ERROR in users '%s' does not exist" % row['username']
+ exit(0)
- map_user[row['id']] = user.pk
+ map_user[row['id']] = user
+ print "loading rooms..."
sj_room = list(db.get_sj_room_table())
map_room = {}
for row in sj_room:
try:
room = SJRoom.objects.get(name=row['name'])
except SJRoom.DoesNotExist:
- print "ERROR"
- map_room[row['id']] = room.pk
+ print "ERROR in room '%s' does not exist" % row['name']
+ exit(0)
+ map_room[row['id']] = room
# Migrate sj_url table
sj_url = list(db.get_sj_url_table())
for row in sj_url:
- user = admin
- pk = map_user.get(row['userid'], 0)
- if pk:
- user = User.objects.get(pk=pk)
- room = SJRoom.objects.get(name='main')
- pk = map_room.get(row['roomid'], 0)
- if pk:
- room = SJRoom.objects.get(pk=pk)
- try:
+ if row['userid'] in map_user:
+ user = map_user[row['userid']]
+ else:
+ print "unknown user in migrate: '%d'" % row['userid']
+ continue
+
+ if row['roomid'] in map_room:
+ room = map_room[row['roomid']]
+ else:
+ print "unknown room in migrate: '%d'" % row['roomid']
+ continue
+
+ try:
url = SJContent.objects.get(
user=user,
datetime=datetime.fromtimestamp(row['date']),
room=room,
+ old_id=row['id'],
content_type='url')
+ print "url '%d' exist" % row['date']
except SJContent.DoesNotExist:
url = SJContent(
user=user,
datetime=datetime.fromtimestamp(row['date']),
room=room,
+ old_id=row['id'],
content_type='url')
+ print "url '%d' created" % row['date']
url.settings = dict(url=row['url'])
url.save()
-
- row['__sjcontent_url_pk'] = url.pk