solutions table

This commit is contained in:
Egor Matveev
2021-12-18 10:21:13 +03:00
parent bd9ffa20bc
commit c2b1e67be5
10 changed files with 158 additions and 54 deletions

View File

@@ -1,8 +1,10 @@
from functools import cached_property
from SprintLib.utils import get_bytes, write_bytes, delete_file
class FileStorageMixin:
@property
@cached_property
def text(self):
return get_bytes(self.fs_id).decode("utf-8")

View File

@@ -1,4 +1,5 @@
from os.path import join, exists
from functools import cached_property
from os.path import exists
from shutil import rmtree
from subprocess import call
@@ -8,7 +9,7 @@ from django.utils import timezone
from Main.models.solution_file import SolutionFile
from Main.models.task import Task
from Sprint.settings import CONSTS, SOLUTIONS_ROOT, SOLUTIONS_ROOT_EXTERNAL
from Sprint.settings import CONSTS
from SprintLib.language import languages
@@ -28,7 +29,7 @@ class Solution(models.Model):
rmtree(self.directory)
super().delete(using=using, keep_parents=keep_parents)
@property
@cached_property
def files(self):
data = []
for file in SolutionFile.objects.filter(solution=self):