diff --git a/apps/tag/management/commands/add_tags.py b/apps/tag/management/commands/add_tags.py index 496cb85b..30164548 100644 --- a/apps/tag/management/commands/add_tags.py +++ b/apps/tag/management/commands/add_tags.py @@ -11,7 +11,7 @@ class Command(BaseCommand): def handle(self, *args, **kwargs): existing_establishment = Establishment.objects.filter( - old_id__isnull=False + old_id__isnull=False, tags__isnull=True ) ESTABLISHMENT = 1 SHOP = 2 @@ -58,17 +58,31 @@ class Command(BaseCommand): existing_establishment.values_list('old_id', flat=True) )): - new_tag, _ = Tag.objects.get_or_create( - label={ - 'en-GB': tag.value, - 'fr-FR': tag.value, - 'ru-RU': tag.value, - }, + new_tag, created = Tag.objects.get_or_create( value=tag.value, category=tag_category, ) + if created: + + sp = tag.value.split('_') + value = ' '.join([sp[0].capitalize()] + sp[1:]) + + trans = { + 'en-GB': value, + 'fr-FR': value, + 'ru-RU': value, + } + + aliases = legacy.MetadatumAliases.objects.filter(value=tag.value) + + for alias in aliases: + trans[alias.locale] = alias.meta_alias + + new_tag.label = trans + new_tag.save() + est = existing_establishment.filter( - old_id=tag.establishment_id, tags__isnull=True).first() + old_id=tag.establishment_id).first() if est: est.tags.add(new_tag) est.save()