schon/engine/vibes_auth/migrations/0003_alter_user_language.py

58 lines
1.8 KiB
Python

from django.db import migrations, models
from django.db.models.functions import Lower
def forwards(apps, schema_editor):
if schema_editor:
pass
User = apps.get_model("vibes_auth", "User")
User.objects.all().update(language=Lower("language"))
def backwards(apps, schema_editor):
if schema_editor:
pass
User = apps.get_model("vibes_auth", "User")
for u in User.objects.all():
parts = u.language.split("-", 1)
if len(parts) == 2:
u.language = f"{parts[0].lower()}-{parts[1].upper()}"
u.save(update_fields=["language"])
class Migration(migrations.Migration):
dependencies = [
("vibes_auth", "0002_blacklistedtoken_outstandingtoken"),
]
operations = [
migrations.RunPython(forwards, backwards),
migrations.AlterField(
model_name="user",
name="language",
field=models.CharField(
choices=[
("en-gb", "English (British)"),
("ar-ar", "العربية"),
("cs-cz", "Česky"),
("da-dk", "Dansk"),
("de-de", "Deutsch"),
("en-us", "English (American)"),
("es-es", "Español"),
("fr-fr", "Français"),
("hi-in", "हिंदी"),
("it-it", "Italiano"),
("ja-jp", "日本語"),
("kk-kz", "Қазақ"),
("nl-nl", "Nederlands"),
("pl-pl", "Polska"),
("pt-br", "Português"),
("ro-ro", "Română"),
("ru-ru", "Русский"),
("zh-hans", "简体中文"),
],
default="en-gb",
max_length=7,
),
),
]