# Generated by Django 5.1.15 on 2026-03-30 19:15 import django.db.models.deletion import scoremanager.models from django.conf import settings from django.db import migrations, models class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Piece', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=255, unique=True, verbose_name='title')), ('composer', models.CharField(blank=True, max_length=255, verbose_name='composer')), ('repertoire_nr', models.IntegerField(blank=True, default=None, null=True, unique=True)), ], options={ 'ordering': ['title'], 'permissions': (('manage_scores', 'Administrate and manage scores'),), }, ), migrations.CreateModel( name='BookLocation', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('book', models.CharField(max_length=100, verbose_name='Buch')), ('page', models.IntegerField(verbose_name='page')), ('piece', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='scoremanager.piece')), ], options={ 'ordering': ['book', 'page'], }, ), migrations.CreateModel( name='Score', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('score_type', models.CharField(max_length=100, verbose_name='score type')), ('file', models.FileField(upload_to=scoremanager.models.score_filename, verbose_name='file')), ('piece', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='scores', to='scoremanager.piece')), ('uploaded_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL, verbose_name='uploaded_by')), ], options={ 'ordering': ['score_type'], 'unique_together': {('piece', 'score_type')}, }, ), migrations.CreateModel( name='Recording', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('artist', models.CharField(max_length=100, verbose_name='Artist')), ('file', models.FileField(upload_to=scoremanager.models.recording_filename, verbose_name='file')), ('piece', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='recordings', to='scoremanager.piece')), ('uploaded_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL, verbose_name='uploaded_by')), ], options={ 'ordering': ['artist'], 'unique_together': {('piece', 'artist')}, }, ), migrations.CreateModel( name='ScoreUserMapping', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('piece', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='scoremanager.piece')), ('score', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='scoremanager.score')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'unique_together': {('piece', 'user')}, }, ), migrations.CreateModel( name='YoutubeRecording', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('link', models.CharField(max_length=300)), ('piece', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='youtubeLinks', to='scoremanager.piece')), ('uploaded_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL, verbose_name='uploaded_by')), ], options={ 'unique_together': {('link', 'piece')}, }, ), ]