fix transfer script

This commit is contained in:
Kuroshini 2020-01-28 21:27:45 +03:00
parent 24f4abc76d
commit 8806bc4e33

View File

@ -1,7 +1,7 @@
from pprint import pprint
from establishment.models import Establishment
from partner.models import Partner
from partner.models import Partner, PartnerToEstablishment
from transfer.models import EstablishmentBacklinks
from transfer.serializers.partner import PartnerSerializer
@ -33,6 +33,20 @@ def transfer_partner():
else:
pprint(f"Partner serializer errors: {serialized_data.errors}")
# here we manually delete duplicates
partners_to_remove_ids = []
for partner_establishment_proxy in PartnerToEstablishment.objects.all():
related_partner = partner_establishment_proxy.partner
actual_partner = Partner.objects.filter(type=related_partner.type,
url=related_partner.url,
name=related_partner.name).first() # exists for sure
if related_partner.pk != actual_partner.pk:
partners_to_remove_ids.append(related_partner.pk)
partner_establishment_proxy.partner = actual_partner
partner_establishment_proxy.save()
Partner.objects.filter(id__in=partners_to_remove_ids).delete()
data_types = {
"partner": [transfer_partner]