From f4c2c6586e38ed1c037b5e24a06ba0fcadb9b7a8 Mon Sep 17 00:00:00 2001 From: Julius O Date: Fri, 11 Dec 2015 17:09:26 +0000 Subject: [PATCH] Migrations to delete broken Sapelli projects --- .../migrations/0007_deleted_projects.py | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 geokey_sapelli/migrations/0007_deleted_projects.py diff --git a/geokey_sapelli/migrations/0007_deleted_projects.py b/geokey_sapelli/migrations/0007_deleted_projects.py new file mode 100644 index 0000000..46f03de --- /dev/null +++ b/geokey_sapelli/migrations/0007_deleted_projects.py @@ -0,0 +1,29 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import migrations + + +def check_projects(apps, schema_editor): + Project = apps.get_model('projects', 'Project') + SapelliProject = apps.get_model('geokey_sapelli', 'SapelliProject') + + for sapelli_project in SapelliProject.objects.all(): + try: + project = Project.objects.get(pk=sapelli_project.project.id) + + if project.status == 'deleted': + sapelli_project.delete() + except Project.DoesNotExist: + sapelli_project.delete() + + +class Migration(migrations.Migration): + + dependencies = [ + ('geokey_sapelli', '0006_sapelliproject_sapelli_fingerprint'), + ] + + operations = [ + migrations.RunPython(check_projects), + ]