set tasks
This commit is contained in:
parent
375426dd38
commit
a7a7d9532b
@ -40,3 +40,7 @@ class Set(models.Model):
|
||||
@cached_property
|
||||
def tasks(self):
|
||||
return Task.objects.filter(settasks__set=self).order_by("settasks__name")
|
||||
|
||||
@cached_property
|
||||
def settasks_ordered(self):
|
||||
return self.settasks.order_by('name')
|
||||
|
@ -17,8 +17,12 @@ class TaskView(BaseView):
|
||||
user=self.request.user, task=self.entities.task
|
||||
)
|
||||
self.context["progress"] = progress
|
||||
self.context["in_set"] = hasattr(self.entities, 'setTask')
|
||||
|
||||
def pre_handle(self):
|
||||
if hasattr(self.entities, 'setTask'):
|
||||
self.entities.add('task', self.entities.setTask.task)
|
||||
self.entities.add('set', self.entities.setTask.set)
|
||||
if self.request.method == "GET":
|
||||
return
|
||||
self.solution = Solution.objects.create(
|
||||
|
@ -41,7 +41,7 @@ class BaseView:
|
||||
model_name = key.rstrip("_id")
|
||||
c.entities.add(
|
||||
model_name,
|
||||
eval(model_name.capitalize()).objects.get(
|
||||
eval(model_name[0].upper() + model_name[1:]).objects.get(
|
||||
id=int(request.GET[key])
|
||||
),
|
||||
)
|
||||
|
@ -1,10 +1,11 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Title</title>
|
||||
</head>
|
||||
<body>
|
||||
{% extends 'base_main.html' %}
|
||||
|
||||
</body>
|
||||
</html>
|
||||
{% block title %}{{ set.name }}{% endblock %}
|
||||
|
||||
{% block main %}
|
||||
<h3>{{ set.name }}</h3>
|
||||
<h4>Таски</h4>
|
||||
{% for settask in set.settasks_ordered %}
|
||||
<a href="/task?setTask_id={{ settask.id }}">{{ settask.name }}. {{ settask.task.name }}</a><br>
|
||||
{% endfor %}
|
||||
{% endblock %}
|
@ -45,6 +45,8 @@
|
||||
|
||||
{% block main %}
|
||||
<div id="runtime"></div>
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
{% if task.legend %}
|
||||
<h4>Легенда</h4>
|
||||
{% autoescape off %}
|
||||
@ -107,6 +109,16 @@
|
||||
<hr>
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
</div>
|
||||
{% if in_set %}
|
||||
<div class="col-2">
|
||||
<h5><a href="/set?set_id={{ set.id }}">{{ set.name }}</a></h5>
|
||||
{% for settask in setTask.set.settasks_ordered %}
|
||||
<a href="/task?setTask_id={{ settask.id }}">{% if task == settask.task %}<b>{% endif %}{{ settask.name }}. {{ settask.task.name }}{% if task == settask.task %}</b>{% endif %}</a><br>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
<h2>Отправить решение</h2>
|
||||
<table style="margin-bottom: 10px;">
|
||||
<tr>
|
||||
|
Loading…
Reference in New Issue
Block a user