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

106 lines
3.7 KiB
Python

# Generated manually; run `python manage.py makemigrations` if you change models.
from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
import django.utils.timezone
class Migration(migrations.Migration):
initial = True
dependencies = [
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]
operations = [
migrations.CreateModel(
name="MembershipPlan",
fields=[
(
"id",
models.BigAutoField(
auto_created=True,
primary_key=True,
serialize=False,
verbose_name="ID",
),
),
("name", models.CharField(max_length=100)),
("description", models.TextField(blank=True)),
("duration_days", models.PositiveIntegerField(default=30)),
("price", models.DecimalField(decimal_places=2, max_digits=8)),
("created_at", models.DateTimeField(auto_now_add=True)),
],
options={
"ordering": ["price"],
"verbose_name": "абонемент",
"verbose_name_plural": "абонементы",
},
),
migrations.CreateModel(
name="Profile",
fields=[
(
"id",
models.BigAutoField(
auto_created=True,
primary_key=True,
serialize=False,
verbose_name="ID",
),
),
("phone", models.CharField(blank=True, max_length=20)),
("created_at", models.DateTimeField(auto_now_add=True)),
(
"user",
models.OneToOneField(
on_delete=django.db.models.deletion.CASCADE,
related_name="profile",
to=settings.AUTH_USER_MODEL,
),
),
],
options={
"verbose_name": "профиль",
"verbose_name_plural": "профили",
},
),
migrations.CreateModel(
name="Subscription",
fields=[
(
"id",
models.BigAutoField(
auto_created=True,
primary_key=True,
serialize=False,
verbose_name="ID",
),
),
("start_date", models.DateField(default=django.utils.timezone.now)),
("end_date", models.DateField()),
("created_at", models.DateTimeField(auto_now_add=True)),
(
"plan",
models.ForeignKey(
on_delete=django.db.models.deletion.PROTECT,
related_name="subscriptions",
to="club.membershipplan",
),
),
(
"user",
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE,
related_name="subscriptions",
to=settings.AUTH_USER_MODEL,
),
),
],
options={
"ordering": ["-start_date"],
"verbose_name": "покупка абонемента",
"verbose_name_plural": "покупки абонементов",
},
),
]