Add Season model to teams app: define fields, constraints, meta options, and utility methods for date range and current season tracking.
This commit is contained in:
48
teams/migrations/0001_initial.py
Normal file
48
teams/migrations/0001_initial.py
Normal file
@@ -0,0 +1,48 @@
|
||||
# Generated by Django 6.0.3 on 2026-04-18 13:47
|
||||
|
||||
import rules.contrib.models
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = []
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name="Season",
|
||||
fields=[
|
||||
(
|
||||
"id",
|
||||
models.BigAutoField(
|
||||
auto_created=True,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
verbose_name="ID",
|
||||
),
|
||||
),
|
||||
("start_date", models.DateField(verbose_name="start date")),
|
||||
("end_date", models.DateField(verbose_name="end date")),
|
||||
],
|
||||
options={
|
||||
"verbose_name": "season",
|
||||
"verbose_name_plural": "seasons",
|
||||
"ordering": ["start_date"],
|
||||
"constraints": [
|
||||
models.UniqueConstraint(
|
||||
fields=("start_date", "end_date"),
|
||||
name="season_start_date_end_date_unique",
|
||||
violation_error_message="Start and end date for a given season must be unique",
|
||||
),
|
||||
models.CheckConstraint(
|
||||
condition=models.Q(("start_date__lt", models.F("end_date"))),
|
||||
name="season_start_date_lt_end_date",
|
||||
violation_error_message="Start date must be before end date.",
|
||||
),
|
||||
],
|
||||
},
|
||||
bases=(rules.contrib.models.RulesModelMixin, models.Model),
|
||||
),
|
||||
]
|
||||
Reference in New Issue
Block a user