26 lines
542 B
Python
26 lines
542 B
Python
from ninja import Schema
|
|
|
|
from app.api_base import BaseSchema
|
|
from scores.models import Score
|
|
|
|
|
|
class ScoreIn(Schema, BaseSchema):
|
|
username: str
|
|
points: int
|
|
|
|
|
|
class ScoreOut(Schema, BaseSchema):
|
|
username: str
|
|
points: int
|
|
version: str | None
|
|
created_at: str
|
|
rank: int
|
|
|
|
@staticmethod
|
|
def resolve_version(obj: Score) -> str | None:
|
|
return obj.version.name if obj.version is not None else None
|
|
|
|
@staticmethod
|
|
def resolve_created_at(obj: Score) -> str:
|
|
return obj.created_at.isoformat()
|