feat: added order_by method

This commit is contained in:
2024-04-25 18:19:26 +02:00
parent ee11d86235
commit 4d997a375e

View File

@@ -0,0 +1,14 @@
from typing import Callable, Optional
from sqlalchemy import asc, desc
from sqlalchemy.sql.selectable import Select
def order_by(order_by: Optional[str] = None) -> Callable[[Select], Select]:
def _order_by(query: Select) -> Select:
if order_by:
direction = desc if order_by.startswith("-") else asc
query = query.order_by(direction(order_by.lstrip("-")))
return query
return _order_by