haikal/inventory/management/commands/serie_translate.py
Marwan Alwali 7423fa9878 update
2025-02-18 09:57:19 +03:00

70 lines
3.1 KiB
Python

from django.core.management.base import BaseCommand
from inventory.models import CarSerie
TRANSLATIONS = {
"Sedan": "سيدان",
"Coupe": "كوبيه",
"SUV 5 doors": "إس يو في - خمسة أبواب",
"Minivan": "ميني فان",
"Hatchback": "هاتشباك",
"Cabriolet": "سطح قابل للطي",
"Hatchback 5-doors": "هاتشباك - خمسة أبواب",
"Hatchback 5 doors": "هاتشباك - خمسة أبواب",
"Hatchback 3-doors": "هاتشباك - ثلاثة أبواب",
"Crossover": "كروس أوفر",
"Wagon": "واغن",
"SUV": "إس يو في",
"Wagon 5 doors": "واغن - خمسة أبواب",
"Roadster": "رودستر",
"SUV 5-doors": "إس يو في - خمسة أبواب",
"Wagon 5-doors": "واغن - خمسة أبواب",
"Sedan 4-doors": "سيدان - أربعة أبواب",
"Hatchback 3 doors": "هاتشباك - ثلاثة أبواب",
"Van": "فان",
"Pickup Double cabin": "بيك أب - غمارتين",
"Compactvan": "كومباكت فان",
"Pickup": "بيك أب",
"Microvan": "ميكروفان",
"Liftback": "ليفت باك",
"SUV 3-doors": "إس يو في - ثلاثة أبواب",
"Coupe 2-doors": "كوبيه - بابين",
"Pickup Single cabin": "بيك أب - غمارة واحدة",
"Crossover 5-doors": "كروس أوفر - خمسة أبواب",
"Coupe-Hardtop": "كوبيه هاردتوب",
"SUV 3 doors": "إس يو في - ثلاثة أبواب",
"Hardtop": "هاردتوب",
"Sedan 2-doors": "سيدان - بابين",
"Minivan 5-doors": "ميني فان - خمسة أبواب",
"Targa": "تارغا",
"SUV opened": "إس يو في مكشوف",
"Pickup One-and-a-half cabin": "بيك أب - غمارة ونصف",
"Sedan 2 doors": "سيدان - بابين",
"AMG Sedan 4-doors": "أي إم جي سيدان - أربعة أبواب",
"Cabriolet 2-doors": "سطح قابل للطي - بابين",
"Fastback": "فاست باك",
"Sedan-Hardtop": "سيدان هاردتوب",
"Regular Cab pickup 2-doors": "بيك أب كابينة عادية - بابين",
"Grand minivan 5-doors": "ميني فان كبير - خمسة أبواب",
"Sedan Long": "سيدان طويل",
"Speedster": "سبيدستر",
}
class Command(BaseCommand):
help = "Translate CarSerie model names into Arabic"
def handle(self, *args, **kwargs):
updated_count = 0
for car_serie in CarSerie.objects.all():
arabic_translation = TRANSLATIONS.get(car_serie.name)
if arabic_translation and car_serie.arabic_name != arabic_translation:
car_serie.arabic_name = arabic_translation
car_serie.save()
updated_count += 1
self.stdout.write(self.style.SUCCESS(f"Updated: {car_serie.name} -> {arabic_translation}"))
if updated_count:
self.stdout.write(self.style.SUCCESS(f"Successfully updated {updated_count} entries."))
else:
self.stdout.write(self.style.WARNING("No updates were made."))