Ultron/ultron/objective/migrations/0001_initial.py

275 lines
9.4 KiB
Python

# Generated by Django 3.2.8 on 2021-12-01 13:02
from django.db import migrations, models
import django.db.models.deletion
import ultron.objective.models
class Migration(migrations.Migration):
initial = True
dependencies = []
operations = [
migrations.CreateModel(
name="Educative",
fields=[
(
"id",
models.BigAutoField(
auto_created=True,
primary_key=True,
serialize=False,
verbose_name="ID",
),
),
(
"informations",
models.TextField(
blank=True,
help_text="Only MarkDown is authorized",
null=True,
verbose_name="Comments",
),
),
(
"long_label",
models.CharField(max_length=255, verbose_name="Long Name"),
),
(
"short_label",
models.CharField(max_length=255, verbose_name="Short Name"),
),
(
"difficulty",
models.DecimalField(
decimal_places=1,
default=0.0,
max_digits=3,
verbose_name="Difficulty",
),
),
(
"level",
models.PositiveSmallIntegerField(default=0, verbose_name="Level"),
),
(
"rank",
models.PositiveSmallIntegerField(default=0, verbose_name="Rank"),
),
(
"age_boy",
models.PositiveSmallIntegerField(
blank=True, null=True, verbose_name="Boy's age"
),
),
(
"age_girl",
models.PositiveSmallIntegerField(
blank=True, null=True, verbose_name="Girl's age"
),
),
(
"educatives",
models.ManyToManyField(
blank=True,
related_name="educatives_of",
to="objective.Educative",
),
),
(
"prerequisites",
models.ManyToManyField(
blank=True,
related_name="prerequisite_of",
to="objective.Educative",
),
),
],
options={
"verbose_name": "Educatif",
"verbose_name_plural": "Educatifs",
"ordering": ["long_label", "short_label"],
},
),
migrations.CreateModel(
name="TouchPosition",
fields=[
(
"id",
models.BigAutoField(
auto_created=True,
primary_key=True,
serialize=False,
verbose_name="ID",
),
),
(
"long_label",
models.CharField(max_length=30, verbose_name="Long label"),
),
(
"short_label",
models.CharField(max_length=15, verbose_name="Short label"),
),
(
"allowed_in_competition",
models.BooleanField(verbose_name="Allowed in competition"),
),
("is_default", models.BooleanField(verbose_name="Défault ?")),
],
options={
"verbose_name": "Landing",
"verbose_name_plural": "Landings",
"ordering": [
"long_label",
"short_label",
"is_default",
"allowed_in_competition",
],
},
),
migrations.CreateModel(
name="Routine",
fields=[
(
"educative_ptr",
models.OneToOneField(
auto_created=True,
on_delete=django.db.models.deletion.CASCADE,
parent_link=True,
primary_key=True,
serialize=False,
to="objective.educative",
),
),
("active", models.BooleanField()),
("is_competitive", models.BooleanField(default=False)),
],
options={
"verbose_name": "Routine",
"verbose_name_plural": "Routines",
},
bases=("objective.educative",),
),
migrations.CreateModel(
name="Skill",
fields=[
(
"educative_ptr",
models.OneToOneField(
auto_created=True,
on_delete=django.db.models.deletion.CASCADE,
parent_link=True,
primary_key=True,
serialize=False,
to="objective.educative",
),
),
(
"position",
models.CharField(
choices=[
("0", "None"),
("o", "Tuck"),
("c", "Puck"),
("<", "Pike"),
("/", "Straight"),
("//", "Straddle"),
],
max_length=2,
),
),
(
"rotation_type",
models.PositiveSmallIntegerField(
choices=[(0, "None"), (1, "Frontward"), (2, "Backward")],
verbose_name="Type de rotation",
),
),
(
"rotation",
models.PositiveSmallIntegerField(verbose_name="1/4 de rotation"),
),
("twist", models.PositiveSmallIntegerField(verbose_name="1/2 Vrille")),
("notation", models.CharField(max_length=25)),
(
"simplified_notation",
models.CharField(max_length=25, verbose_name="Notation simplifiée"),
),
("is_competitive", models.BooleanField(default=False)),
(
"departure",
models.ForeignKey(
default=ultron.objective.models.get_default_position,
on_delete=django.db.models.deletion.CASCADE,
related_name="depart_of",
to="objective.touchposition",
verbose_name="Take-off position",
),
),
(
"landing",
models.ForeignKey(
default=ultron.objective.models.get_default_position,
on_delete=django.db.models.deletion.CASCADE,
related_name="landing_of",
to="objective.touchposition",
verbose_name="Landing position",
),
),
],
options={
"verbose_name": "Skill",
"verbose_name_plural": "Skills",
},
bases=("objective.educative",),
),
migrations.CreateModel(
name="RoutineSkill",
fields=[
(
"id",
models.BigAutoField(
auto_created=True,
primary_key=True,
serialize=False,
verbose_name="ID",
),
),
("rank", models.PositiveSmallIntegerField()),
(
"routine",
models.ForeignKey(
default=None,
on_delete=django.db.models.deletion.CASCADE,
related_name="skill_links",
to="objective.routine",
),
),
(
"skill",
models.ForeignKey(
default=None,
on_delete=django.db.models.deletion.CASCADE,
related_name="routine_links",
to="objective.skill",
),
),
],
options={
"ordering": ("rank",),
},
),
migrations.AddField(
model_name="routine",
name="jumps",
field=models.ManyToManyField(
through="objective.RoutineSkill",
to="objective.Skill",
verbose_name="routine",
),
),
]