Update transportation

This commit is contained in:
GladkihViktor 2019-11-02 17:54:24 +03:00
parent ea830379fc
commit 56b3d0dcc2

View File

@ -0,0 +1,29 @@
from django.core.management.base import BaseCommand
from establishment.models import Establishment
from transfer.models import Establishments as OldEst
class Command(BaseCommand):
help = 'Update transportation column in establishment'
def handle(self, *args, **kwargs):
count = 0
raw_qs = OldEst.objects.raw(
'''
select
e.id,
l.transportation
from establishments e
join locations l on l.id = e.location_id
where trim(l.transportation) is not null
and length(trim(l.transportation)) >1;
'''
)
queryset = [vars(query) for query in raw_qs]
for obj in queryset:
establishment = Establishment.objects.filter(old_id=obj['id']).first()
if establishment:
establishment.transportation = obj['transportation']
count += 1
establishment.save()
self.stdout.write(self.style.WARNING(f'Updated {count} objects.'))