Datenmodell funktioniert und Verwaltung über Admin-Ansicht, service angelegt.

This commit is contained in:
2026-07-28 01:44:02 +02:00
parent 6a6de6882b
commit c62c593b1c
9 changed files with 262 additions and 40 deletions
+65
View File
@@ -0,0 +1,65 @@
# Generated by Django 6.0.7 on 2026-07-27 22:56
import django.db.models.deletion
from django.db import migrations, models
class Migration(migrations.Migration):
initial = True
dependencies = [
('accounts', '0001_initial'),
]
operations = [
migrations.CreateModel(
name='Tournament',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=200, verbose_name='Turniername')),
('date', models.DateField(verbose_name='Datum')),
('description', models.TextField(blank=True, default='', verbose_name='Beschreibung')),
('created_at', models.DateTimeField(auto_now_add=True)),
],
options={
'ordering': ['-date'],
},
),
migrations.CreateModel(
name='Round',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('round_number', models.PositiveIntegerField(verbose_name='Rundennummer')),
('tournament', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='rounds', to='tournaments.tournament')),
],
options={
'ordering': ['round_number'],
'unique_together': {('tournament', 'round_number')},
},
),
migrations.CreateModel(
name='Match',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('result', models.CharField(choices=[('pending', 'Ausstehend'), ('white_win', 'Weiß gewinnt'), ('black_win', 'Schwarz gewinnt'), ('draw', 'Unentschieden')], default='pending', max_length=10)),
('player_black', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='matches_as_black', to='accounts.player', verbose_name='Schwarzer Spieler')),
('player_white', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='matches_as_white', to='accounts.player', verbose_name='Weißer Spieler')),
('round_detail', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='matches', to='tournaments.round')),
],
options={
'unique_together': {('round_detail', 'player_white', 'player_black')},
},
),
migrations.CreateModel(
name='Registration',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('player', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='accounts.player')),
('tournament', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='registrations', to='tournaments.tournament')),
],
options={
'unique_together': {('tournament', 'player')},
},
),
]