2020-09-21 15:53:07 +00:00
# Generated by Django 3.1.1 on 2020-09-21 15:51
import django . core . validators
from django . db import migrations , models
import django . db . models . deletion
class Migration ( migrations . Migration ) :
initial = True
dependencies = [
]
operations = [
migrations . CreateModel (
name = ' Participation ' ,
fields = [
( ' id ' , models . AutoField ( auto_created = True , primary_key = True , serialize = False , verbose_name = ' ID ' ) ) ,
( ' problem ' , models . IntegerField ( choices = [ ( 1 , ' Problem #1 ' ) , ( 2 , ' Problem #2 ' ) , ( 3 , ' Problem #3 ' ) , ( 4 , ' Problem #4 ' ) ] , default = None , null = True , verbose_name = ' problem number ' ) ) ,
] ,
options = {
' verbose_name ' : ' participation ' ,
' verbose_name_plural ' : ' participations ' ,
} ,
) ,
migrations . CreateModel (
name = ' Team ' ,
fields = [
( ' id ' , models . AutoField ( auto_created = True , primary_key = True , serialize = False , verbose_name = ' ID ' ) ) ,
( ' name ' , models . CharField ( max_length = 255 , unique = True , verbose_name = ' name ' ) ) ,
2020-09-23 21:20:44 +00:00
( ' trigram ' , models . CharField ( help_text = ' The trigram must be composed of three uppercase letters. ' , max_length = 3 , unique = True , validators = [ django . core . validators . RegexValidator ( ' [A-Z] {3} ' ) ] , verbose_name = ' trigram ' ) ) ,
2020-09-21 15:53:07 +00:00
( ' access_code ' , models . CharField ( help_text = ' The access code let other people to join the team. ' , max_length = 6 , verbose_name = ' access code ' ) ) ,
] ,
options = {
' verbose_name ' : ' team ' ,
' verbose_name_plural ' : ' teams ' ,
} ,
) ,
migrations . CreateModel (
name = ' Video ' ,
fields = [
( ' id ' , models . AutoField ( auto_created = True , primary_key = True , serialize = False , verbose_name = ' ID ' ) ) ,
( ' link ' , models . URLField ( help_text = ' The full video link. ' , verbose_name = ' link ' ) ) ,
( ' valid ' , models . BooleanField ( default = None , help_text = ' The video got the validation of the administrators. ' , null = True , verbose_name = ' valid ' ) ) ,
( ' participation ' , models . ForeignKey ( on_delete = django . db . models . deletion . CASCADE , to = ' participation.participation ' , verbose_name = ' participation ' ) ) ,
] ,
options = {
' verbose_name ' : ' video ' ,
' verbose_name_plural ' : ' videos ' ,
} ,
) ,
migrations . AddIndex (
model_name = ' team ' ,
index = models . Index ( fields = [ ' trigram ' ] , name = ' participati_trigram_239255_idx ' ) ,
) ,
migrations . AddField (
model_name = ' participation ' ,
name = ' received_participation ' ,
field = models . OneToOneField ( default = None , null = True , on_delete = django . db . models . deletion . PROTECT , related_name = ' sent_participation ' , to = ' participation.participation ' , verbose_name = ' received participation ' ) ,
) ,
migrations . AddField (
model_name = ' participation ' ,
name = ' solution ' ,
field = models . ForeignKey ( default = None , null = True , on_delete = django . db . models . deletion . SET_NULL , related_name = ' + ' , to = ' participation.video ' , verbose_name = ' solution video ' ) ,
) ,
migrations . AddField (
model_name = ' participation ' ,
name = ' synthesis ' ,
field = models . ForeignKey ( default = None , null = True , on_delete = django . db . models . deletion . SET_NULL , related_name = ' + ' , to = ' participation.video ' , verbose_name = ' synthesis video ' ) ,
) ,
migrations . AddField (
model_name = ' participation ' ,
name = ' team ' ,
field = models . OneToOneField ( on_delete = django . db . models . deletion . CASCADE , to = ' participation.team ' , verbose_name = ' team ' ) ,
) ,
]