indexes
This commit is contained in:
@@ -13,6 +13,11 @@ class ExtraFile(FileStorageMixin, models.Model):
|
||||
test_number = models.IntegerField(null=True)
|
||||
fs_id = models.IntegerField(null=True)
|
||||
|
||||
class Meta:
|
||||
indexes = [
|
||||
models.Index(fields=['task'])
|
||||
]
|
||||
|
||||
@property
|
||||
def can_be_sample(self):
|
||||
return (
|
||||
|
@@ -6,3 +6,9 @@ class Friendship(models.Model):
|
||||
from_user = models.ForeignKey(User, on_delete=models.CASCADE, related_name="from_friendship")
|
||||
to_user = models.ForeignKey(User, on_delete=models.CASCADE, related_name="to_friendship")
|
||||
verified = models.BooleanField(default=False)
|
||||
|
||||
class Meta:
|
||||
indexes = [
|
||||
models.Index(fields=['from_user']),
|
||||
models.Index(fields=['to_user'])
|
||||
]
|
||||
|
@@ -11,3 +11,8 @@ class Message(models.Model):
|
||||
text = models.TextField()
|
||||
read = models.BooleanField(default=False)
|
||||
time_sent = models.DateTimeField(default=timezone.now)
|
||||
|
||||
class Meta:
|
||||
indexes = [
|
||||
models.Index(fields=['chat', '-time_sent'])
|
||||
]
|
||||
|
@@ -15,6 +15,11 @@ class Progress(models.Model):
|
||||
score = models.IntegerField(default=0)
|
||||
finished = models.BooleanField(default=False)
|
||||
|
||||
class Meta:
|
||||
indexes = [
|
||||
models.Index(fields=['user', 'task'])
|
||||
]
|
||||
|
||||
@property
|
||||
def time(self):
|
||||
if not self.finished:
|
||||
|
@@ -8,3 +8,8 @@ class SetTask(models.Model):
|
||||
set = models.ForeignKey(Set, on_delete=models.CASCADE, related_name="settasks")
|
||||
task = models.ForeignKey(Task, on_delete=models.CASCADE, related_name="settasks")
|
||||
name = models.CharField(max_length=2)
|
||||
|
||||
class Meta:
|
||||
indexes = [
|
||||
models.Index(fields=['set'])
|
||||
]
|
||||
|
@@ -21,6 +21,12 @@ class Solution(models.Model):
|
||||
result = models.TextField(default=CONSTS["in_queue_status"])
|
||||
test = models.IntegerField(default=None, null=True)
|
||||
|
||||
class Meta:
|
||||
indexes = [
|
||||
models.Index(fields=['task', 'user', '-time_sent']),
|
||||
models.Index(fields=['task', '-time_sent'])
|
||||
]
|
||||
|
||||
@property
|
||||
def language(self):
|
||||
return languages[self.language_id]
|
||||
|
@@ -7,3 +7,8 @@ class SolutionFile(FileStorageMixin, models.Model):
|
||||
path = models.TextField()
|
||||
fs_id = models.IntegerField()
|
||||
solution = models.ForeignKey("Solution", on_delete=models.CASCADE)
|
||||
|
||||
class Meta:
|
||||
indexes = [
|
||||
models.Index(fields=['solution'])
|
||||
]
|
||||
|
Reference in New Issue
Block a user