V tabulce potřebujeme znát i Hodnocení, kvůli bodům…
This commit is contained in:
		
							parent
							
								
									53032a49d8
								
							
						
					
					
						commit
						468443e062
					
				
					 2 changed files with 8 additions and 8 deletions
				
			
		|  | @ -38,10 +38,10 @@ Do data (včetně): {{ filtr.reseni_do }} | |||
| 		</td> | ||||
| 		{% for bunka in hodnoty %} | ||||
| 			<td> | ||||
| 			{% for reseni in bunka %} | ||||
| 			{% for reseni,hodnoceni in bunka %} | ||||
| 				<a href="{% url 'odevzdavatko_detail_reseni' pk=reseni.id %}"> | ||||
| 					{{reseni.datum_doruceni | date:"j. n."}}({{ hodn.body }}b) | ||||
| 				</a> | ||||
| 					{{reseni.cas_doruceni | date:"j. n."}} ({{ hodnoceni.body }}b) | ||||
| 				</a><br> | ||||
| 			{% endfor %} | ||||
| 			</td> | ||||
| 		{% endfor %} | ||||
|  |  | |||
|  | @ -118,7 +118,7 @@ class TabulkaOdevzdanychReseniView(ListView): | |||
| 		ctx = super().get_context_data(*args, **kwargs) | ||||
| 		ctx['problemy'] = self.problemy | ||||
| 		ctx['resitele'] = self.resitele | ||||
| 		tabulka: dict[m.Problem, dict[m.Resitel, list[m.Reseni]]] = dict() | ||||
| 		tabulka: dict[m.Problem, dict[m.Resitel, list[tuple[m.Reseni, m.Hodnoceni]]]] = dict() | ||||
| 
 | ||||
| 		def pridej_reseni(resitel, hodnoceni): | ||||
| 			problem = hodnoceni.problem | ||||
|  | @ -128,19 +128,19 @@ class TabulkaOdevzdanychReseniView(ListView): | |||
| 			if problem not in tabulka: | ||||
| 				tabulka[problem] = dict() | ||||
| 			if resitel not in tabulka[problem]: | ||||
| 				tabulka[problem][resitel] = [reseni] | ||||
| 				tabulka[problem][resitel] = [(reseni, hodnoceni)] | ||||
| 			else: | ||||
| 				tabulka[problem][resitel].append(reseni) | ||||
| 				tabulka[problem][resitel].append((reseni, hodnoceni)) | ||||
| 		 | ||||
| 		for hodnoceni in self.get_queryset(): | ||||
| 			for resitel in hodnoceni.reseni.resitele.all(): | ||||
| 				pridej_reseni(resitel, hodnoceni) | ||||
| 
 | ||||
| 		hodnoty: list[list[list[m.Reseni]]] = [] # Seznam řádků výsledné tabulky podle self.resitele, v každém řádku buňky v pořadí podle self.problemy, v každé buňce seznam řešení k danému řešiteli a problému. | ||||
| 		hodnoty: list[list[list[tuple[m.Reseni, m.Hodnoceni]]]] = [] # Seznam řádků výsledné tabulky podle self.resitele, v každém řádku buňky v pořadí podle self.problemy, v každé buňce seznam řešení k danému řešiteli a problému. | ||||
| 		resitele_do_tabulky: list[m.Resitel] = [] | ||||
| 		for resitel in self.resitele: | ||||
| 			dostal_body = False | ||||
| 			resiteluv_radek: list[list[m.Resitel]] = [] # podle pořadí v self.problemy | ||||
| 			resiteluv_radek: list[list[tuple[m.Resitel, m.Hodnoceni]]] = [] # podle pořadí v self.problemy | ||||
| 			for problem in self.problemy: | ||||
| 				if problem in tabulka and resitel in tabulka[problem]: | ||||
| 					resiteluv_radek.append(tabulka[problem][resitel]) | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue
	
	 Pavel "LEdoian" Turinsky
						Pavel "LEdoian" Turinsky