blank true
This commit is contained in:
parent
cd6b19a4ea
commit
28f29fa610
131
Main/migrations/0032_auto_20220408_0018.py
Normal file
131
Main/migrations/0032_auto_20220408_0018.py
Normal file
@ -0,0 +1,131 @@
|
|||||||
|
# Generated by Django 3.2.4 on 2022-04-07 21:18
|
||||||
|
|
||||||
|
from django.conf import settings
|
||||||
|
from django.db import migrations, models
|
||||||
|
import django.db.models.deletion
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||||
|
('Main', '0031_userinfo_vk_user_id'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='dump',
|
||||||
|
name='fs_id',
|
||||||
|
field=models.IntegerField(blank=True, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='dump',
|
||||||
|
name='task',
|
||||||
|
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='Main.task'),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='extrafile',
|
||||||
|
name='fs_id',
|
||||||
|
field=models.IntegerField(blank=True, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='extrafile',
|
||||||
|
name='is_sample',
|
||||||
|
field=models.BooleanField(blank=True, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='extrafile',
|
||||||
|
name='is_test',
|
||||||
|
field=models.BooleanField(blank=True, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='extrafile',
|
||||||
|
name='readable',
|
||||||
|
field=models.BooleanField(blank=True, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='extrafile',
|
||||||
|
name='test_number',
|
||||||
|
field=models.IntegerField(blank=True, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='group',
|
||||||
|
name='access_token',
|
||||||
|
field=models.CharField(blank=True, max_length=30, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='group',
|
||||||
|
name='creator',
|
||||||
|
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='progress',
|
||||||
|
name='finished_time',
|
||||||
|
field=models.DateTimeField(blank=True, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='set',
|
||||||
|
name='creator',
|
||||||
|
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='set',
|
||||||
|
name='end_time',
|
||||||
|
field=models.DateTimeField(blank=True, default=None, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='set',
|
||||||
|
name='start_time',
|
||||||
|
field=models.DateTimeField(blank=True, default=None, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='solution',
|
||||||
|
name='set',
|
||||||
|
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='Main.set'),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='solution',
|
||||||
|
name='test',
|
||||||
|
field=models.IntegerField(blank=True, default=None, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='task',
|
||||||
|
name='creator',
|
||||||
|
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='userinfo',
|
||||||
|
name='code',
|
||||||
|
field=models.IntegerField(blank=True, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='userinfo',
|
||||||
|
name='favourite_language_id',
|
||||||
|
field=models.IntegerField(blank=True, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='userinfo',
|
||||||
|
name='name',
|
||||||
|
field=models.TextField(blank=True, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='userinfo',
|
||||||
|
name='profile_picture_fs_id',
|
||||||
|
field=models.IntegerField(blank=True, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='userinfo',
|
||||||
|
name='surname',
|
||||||
|
field=models.TextField(blank=True, null=True),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='userinfo',
|
||||||
|
name='user',
|
||||||
|
field=models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='userinfo',
|
||||||
|
name='vk_user_id',
|
||||||
|
field=models.IntegerField(blank=True, null=True),
|
||||||
|
),
|
||||||
|
]
|
@ -7,9 +7,9 @@ from .mixins import FileStorageMixin
|
|||||||
|
|
||||||
class Dump(FileStorageMixin, models.Model):
|
class Dump(FileStorageMixin, models.Model):
|
||||||
timestamp = models.DateTimeField(default=timezone.now)
|
timestamp = models.DateTimeField(default=timezone.now)
|
||||||
fs_id = models.IntegerField(null=True)
|
fs_id = models.IntegerField(null=True, blank=True)
|
||||||
executor = models.ForeignKey(User, on_delete=models.CASCADE)
|
executor = models.ForeignKey(User, on_delete=models.CASCADE)
|
||||||
task = models.ForeignKey("Task", on_delete=models.CASCADE, null=True)
|
task = models.ForeignKey("Task", on_delete=models.CASCADE, null=True, blank=True)
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def ready(self):
|
def ready(self):
|
||||||
|
@ -7,11 +7,11 @@ from .mixins import FileStorageMixin
|
|||||||
class ExtraFile(FileStorageMixin, models.Model):
|
class ExtraFile(FileStorageMixin, models.Model):
|
||||||
task = models.ForeignKey("Task", on_delete=models.CASCADE)
|
task = models.ForeignKey("Task", on_delete=models.CASCADE)
|
||||||
filename = models.TextField()
|
filename = models.TextField()
|
||||||
is_test = models.BooleanField(null=True)
|
is_test = models.BooleanField(null=True, blank=True)
|
||||||
is_sample = models.BooleanField(null=True)
|
is_sample = models.BooleanField(null=True, blank=True)
|
||||||
readable = models.BooleanField(null=True)
|
readable = models.BooleanField(null=True, blank=True)
|
||||||
test_number = models.IntegerField(null=True)
|
test_number = models.IntegerField(null=True, blank=True)
|
||||||
fs_id = models.IntegerField(null=True)
|
fs_id = models.IntegerField(null=True, blank=True)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
indexes = [
|
indexes = [
|
||||||
|
@ -10,10 +10,10 @@ from Main.models.set import Set
|
|||||||
class Group(models.Model):
|
class Group(models.Model):
|
||||||
name = models.TextField()
|
name = models.TextField()
|
||||||
sets = models.ManyToManyField(Set)
|
sets = models.ManyToManyField(Set)
|
||||||
creator = models.ForeignKey(User, null=True, on_delete=models.SET_NULL)
|
creator = models.ForeignKey(User, null=True, blank=True, on_delete=models.SET_NULL)
|
||||||
users = models.ManyToManyField(User, related_name="user_groups")
|
users = models.ManyToManyField(User, related_name="user_groups")
|
||||||
editors = ArrayField(models.TextField(), default=list)
|
editors = ArrayField(models.TextField(), default=list)
|
||||||
access_token = models.CharField(max_length=30, null=True)
|
access_token = models.CharField(max_length=30, null=True, blank=True)
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def available_sets(self):
|
def available_sets(self):
|
||||||
|
@ -11,7 +11,7 @@ class Progress(models.Model):
|
|||||||
user = models.ForeignKey(User, on_delete=models.CASCADE)
|
user = models.ForeignKey(User, on_delete=models.CASCADE)
|
||||||
task = models.ForeignKey(Task, on_delete=models.CASCADE)
|
task = models.ForeignKey(Task, on_delete=models.CASCADE)
|
||||||
start_time = models.DateTimeField(default=timezone.now)
|
start_time = models.DateTimeField(default=timezone.now)
|
||||||
finished_time = models.DateTimeField(null=True)
|
finished_time = models.DateTimeField(null=True, blank=True)
|
||||||
score = models.IntegerField(default=0)
|
score = models.IntegerField(default=0)
|
||||||
finished = models.BooleanField(default=False)
|
finished = models.BooleanField(default=False)
|
||||||
|
|
||||||
|
@ -13,10 +13,10 @@ from SprintLib.language import languages
|
|||||||
class Set(models.Model):
|
class Set(models.Model):
|
||||||
name = models.TextField()
|
name = models.TextField()
|
||||||
public = models.BooleanField(default=False)
|
public = models.BooleanField(default=False)
|
||||||
creator = models.ForeignKey(User, on_delete=models.SET_NULL, null=True)
|
creator = models.ForeignKey(User, on_delete=models.SET_NULL, null=True, blank=True)
|
||||||
opened = models.BooleanField(default=False)
|
opened = models.BooleanField(default=False)
|
||||||
start_time = models.DateTimeField(default=None, null=True)
|
start_time = models.DateTimeField(default=None, null=True, blank=True)
|
||||||
end_time = models.DateTimeField(default=None, null=True)
|
end_time = models.DateTimeField(default=None, null=True, blank=True)
|
||||||
editors = ArrayField(models.TextField(), default=list)
|
editors = ArrayField(models.TextField(), default=list)
|
||||||
languages = ArrayField(models.IntegerField(), default=list)
|
languages = ArrayField(models.IntegerField(), default=list)
|
||||||
auto_add_new_languages = models.BooleanField(default=True)
|
auto_add_new_languages = models.BooleanField(default=True)
|
||||||
|
@ -21,8 +21,8 @@ class Solution(models.Model):
|
|||||||
language_id = models.IntegerField(default=0)
|
language_id = models.IntegerField(default=0)
|
||||||
time_sent = models.DateTimeField(default=timezone.now)
|
time_sent = models.DateTimeField(default=timezone.now)
|
||||||
result = models.TextField(default=CONSTS["in_queue_status"])
|
result = models.TextField(default=CONSTS["in_queue_status"])
|
||||||
test = models.IntegerField(default=None, null=True)
|
test = models.IntegerField(default=None, null=True, blank=True)
|
||||||
set = models.ForeignKey(Set, null=True, on_delete=models.SET_NULL)
|
set = models.ForeignKey(Set, null=True, blank=True, on_delete=models.SET_NULL)
|
||||||
extras = JSONField(default=dict)
|
extras = JSONField(default=dict)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
|
@ -17,7 +17,7 @@ class Task(models.Model):
|
|||||||
specifications = models.TextField(default="")
|
specifications = models.TextField(default="")
|
||||||
time_limit = models.IntegerField(default=10000)
|
time_limit = models.IntegerField(default=10000)
|
||||||
time_estimation = models.IntegerField(default=5)
|
time_estimation = models.IntegerField(default=5)
|
||||||
creator = models.ForeignKey(User, on_delete=models.SET_NULL, null=True)
|
creator = models.ForeignKey(User, on_delete=models.SET_NULL, null=True, blank=True)
|
||||||
editors = ArrayField(models.TextField(), default=list)
|
editors = ArrayField(models.TextField(), default=list)
|
||||||
allow_sharing = models.BooleanField(default=False)
|
allow_sharing = models.BooleanField(default=False)
|
||||||
changes = JSONField(default=list)
|
changes = JSONField(default=list)
|
||||||
|
@ -13,19 +13,19 @@ from SprintLib.language import languages
|
|||||||
|
|
||||||
|
|
||||||
class UserInfo(models.Model):
|
class UserInfo(models.Model):
|
||||||
surname = models.TextField(null=True)
|
surname = models.TextField(null=True, blank=True)
|
||||||
name = models.TextField(null=True)
|
name = models.TextField(null=True, blank=True)
|
||||||
last_request = models.DateTimeField(default=timezone.now)
|
last_request = models.DateTimeField(default=timezone.now)
|
||||||
profile_picture_fs_id = models.IntegerField(null=True)
|
profile_picture_fs_id = models.IntegerField(null=True, blank=True)
|
||||||
favourite_language_id = models.IntegerField(null=True)
|
favourite_language_id = models.IntegerField(null=True, blank=True)
|
||||||
rating = models.IntegerField(default=0)
|
rating = models.IntegerField(default=0)
|
||||||
user = models.OneToOneField(User, on_delete=models.CASCADE, null=True)
|
user = models.OneToOneField(User, on_delete=models.CASCADE, null=True, blank=True)
|
||||||
telegram_chat_id = models.TextField(default="")
|
telegram_chat_id = models.TextField(default="")
|
||||||
vk_user_id = models.IntegerField(null=True)
|
vk_user_id = models.IntegerField(null=True, blank=True)
|
||||||
notification_solution_result = models.BooleanField(default=False)
|
notification_solution_result = models.BooleanField(default=False)
|
||||||
notification_friends = models.BooleanField(default=False)
|
notification_friends = models.BooleanField(default=False)
|
||||||
notification_messages = models.BooleanField(default=False)
|
notification_messages = models.BooleanField(default=False)
|
||||||
code = models.IntegerField(null=True)
|
code = models.IntegerField(null=True, blank=True)
|
||||||
verified = models.BooleanField(default=False)
|
verified = models.BooleanField(default=False)
|
||||||
teacher = models.BooleanField(default=False)
|
teacher = models.BooleanField(default=False)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user