diff --git a/apps/member/views.py b/apps/member/views.py index 39edcc0b..fac8bfc6 100644 --- a/apps/member/views.py +++ b/apps/member/views.py @@ -256,7 +256,8 @@ class ProfileAliasView(ProtectQuerysetMixin, LoginRequiredMixin, DetailView): context = super().get_context_data(**kwargs) note = context['object'].note context["aliases"] = AliasTable( - note.alias.filter(PermissionBackend.filter_queryset(self.request, Alias, "view")).distinct().all()) + note.alias.filter(PermissionBackend.filter_queryset(self.request, Alias, "view")).distinct() + .order_by('normalized_name').all()) context["can_create"] = PermissionBackend.check_perm(self.request, "note.add_alias", Alias( note=context["object"].note, name="", diff --git a/apps/note/tables.py b/apps/note/tables.py index 188683dd..1efd5c38 100644 --- a/apps/note/tables.py +++ b/apps/note/tables.py @@ -215,6 +215,9 @@ class ButtonTable(tables.Table): def render_amount(self, value): return pretty_money(value) + def order_category(self, queryset, is_descending): + return queryset.order_by(f"{'-' if is_descending else ''}category__name"), True + def render_hideshow(self, record): val = '