siteforglod/club/migrations/0002_default_plans.py
2026-02-16 14:05:26 +03:00

50 lines
1.5 KiB
Python

from decimal import Decimal
from django.db import migrations
def create_default_plans(apps, schema_editor):
Plan = apps.get_model("club", "MembershipPlan")
plans = [
{
"name": "Старт 1 месяц",
"description": "Базовый доступ ко всем зонам клуба.",
"duration_days": 30,
"price": Decimal("2490.00"),
},
{
"name": "Сила 3 месяца",
"description": "Три месяца + гостевой визит раз в месяц.",
"duration_days": 90,
"price": Decimal("6490.00"),
},
{
"name": "Премиум 12 месяцев",
"description": "Год без ограничений, приоритетная запись на тренировки.",
"duration_days": 365,
"price": Decimal("19900.00"),
},
]
for data in plans:
Plan.objects.update_or_create(name=data["name"], defaults=data)
def remove_default_plans(apps, schema_editor):
Plan = apps.get_model("club", "MembershipPlan")
Plan.objects.filter(
name__in=[
"Старт 1 месяц",
"Сила 3 месяца",
"Премиум 12 месяцев",
]
).delete()
class Migration(migrations.Migration):
dependencies = [
("club", "0001_initial"),
]
operations = [
migrations.RunPython(create_default_plans, remove_default_plans),
]