3 changed files with 21 additions and 0 deletions
@ -0,0 +1,18 @@
|
||||
from django import template |
||||
from django.db.models.functions import Lower |
||||
from django.db.models.query import QuerySet |
||||
|
||||
from shared.utils.translation import lang_suffix |
||||
|
||||
|
||||
register = template.Library() |
||||
|
||||
|
||||
def orderable(field_name): |
||||
return Lower(lang_suffix(fieldname=field_name)) |
||||
|
||||
|
||||
@register.filter |
||||
def i18nsort(queryset, field_name): |
||||
assert isinstance(queryset, QuerySet), "i18nsort only supports querysets." |
||||
return queryset.order_by(orderable(field_name)) |
Loading…
Reference in new issue