pulseapi/profiles/migrations/0005_copy_user_bookmarks.py (29 lines of code) (raw):

# -*- coding: utf-8 -*- # Generated by Django 1.10.3 on 2017-08-04 18:40 from __future__ import unicode_literals from django.db import migrations from pulseapi import users, profiles def copy_bookmarks_from_user_to_prolfies(apps, schema_editor): EmailUser = apps.get_model('users', 'EmailUser') ProfileUserBookmarks = apps.get_model('profiles', 'UserBookmarks') UserProfile = apps.get_model('profiles', 'UserProfile') current_bookmarks = apps.get_model('users', 'UserBookmarks').objects.all() for bookmark in current_bookmarks: user = EmailUser.objects.get(id=bookmark.user.id) profile = UserProfile.objects.get(user=user) (nbm, created) = ProfileUserBookmarks.objects.get_or_create( user=user, profile=profile, entry=bookmark.entry, timestamp=bookmark.timestamp ) if created is True: msg = "created a parallel bookmark between user:{u} and entry:{e}" msg = msg.format(u=user.id, e=bookmark.entry.id) print(msg) class Migration(migrations.Migration): dependencies = [ ('profiles', '0004_userbookmarks_profile'), ('users', '0004_auto_20170616_1131'), ] operations = [ migrations.RunPython(copy_bookmarks_from_user_to_prolfies), ]