mirror of
https://gitlab.com/animath/si/plateforme.git
synced 2025-06-21 12:38:26 +02:00
Fix table ordering bug
This commit is contained in:
@ -1,5 +1,6 @@
|
||||
import django_tables2 as tables
|
||||
from django.urls import reverse_lazy
|
||||
from django.utils.html import format_html
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
from django_tables2 import A
|
||||
|
||||
@ -54,7 +55,8 @@ class SolutionTable(tables.Table):
|
||||
"tournament:detail",
|
||||
args=[A("tournament.pk")],
|
||||
accessor=A("tournament"),
|
||||
verbose_name=_("tournament"),
|
||||
order_by=("team__tournament__date_start", "team__tournament__name",),
|
||||
verbose_name=_("Tournament"),
|
||||
)
|
||||
|
||||
file = tables.LinkColumn(
|
||||
@ -88,6 +90,7 @@ class SynthesisTable(tables.Table):
|
||||
"tournament:detail",
|
||||
args=[A("tournament.pk")],
|
||||
accessor=A("tournament"),
|
||||
order_by=("team__tournament__date_start", "team__tournament__name",),
|
||||
verbose_name=_("tournament"),
|
||||
)
|
||||
|
||||
@ -113,27 +116,29 @@ class SynthesisTable(tables.Table):
|
||||
|
||||
|
||||
class PoolTable(tables.Table):
|
||||
problems = tables.Column(verbose_name=_("Problems"))
|
||||
problems = tables.Column(
|
||||
verbose_name=_("Problems"),
|
||||
orderable=False,
|
||||
)
|
||||
|
||||
tournament = tables.Column(verbose_name=_("Tournament"))
|
||||
tournament = tables.LinkColumn(
|
||||
"tournament:detail",
|
||||
args=[A("tournament.pk")],
|
||||
verbose_name=_("Tournament"),
|
||||
order_by=("teams__tournament__date_start", "teams__tournament__name",),
|
||||
)
|
||||
|
||||
def render_teams(self, value):
|
||||
return ", ".join(team.trigram for team in value.all())
|
||||
def render_teams(self, record, value):
|
||||
return format_html('<a href="{url}">{trigrams}</a>',
|
||||
url=reverse_lazy('tournament:pool_detail', args=(record.pk,)),
|
||||
trigrams=", ".join(team.trigram for team in value.all()))
|
||||
|
||||
def render_problems(self, value):
|
||||
return ", ".join([str(pb) for pb in value])
|
||||
|
||||
def render_juries(self, value):
|
||||
return ", ".join(str(jury) for jury in value.all())
|
||||
|
||||
class Meta:
|
||||
model = Pool
|
||||
fields = ("teams", "tournament", "problems", "round", "juries", )
|
||||
fields = ("teams", "tournament", "problems", "round", )
|
||||
attrs = {
|
||||
'class': 'table table-condensed table-striped table-hover'
|
||||
}
|
||||
row_attrs = {
|
||||
'style': 'cursor: pointer;',
|
||||
'class': 'row-control',
|
||||
'data-href': lambda record: reverse_lazy('tournament:pool_detail', args=(record.pk,)),
|
||||
}
|
||||
|
Reference in New Issue
Block a user