aboutsummaryrefslogtreecommitdiffstats
path: root/backend/models/discord_user.py
diff options
context:
space:
mode:
Diffstat (limited to 'backend/models/discord_user.py')
-rw-r--r--backend/models/discord_user.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/backend/models/discord_user.py b/backend/models/discord_user.py
index 3f4209d..0eca15b 100644
--- a/backend/models/discord_user.py
+++ b/backend/models/discord_user.py
@@ -43,3 +43,12 @@ class DiscordMember(BaseModel):
pending: t.Optional[bool]
permissions: t.Optional[str]
communication_disabled_until: t.Optional[datetime.datetime]
+
+ def dict(self, *args, **kwargs) -> dict[str, t.Any]:
+ """Convert the model to a python dict, and encode timestamps in a serializable format."""
+ data = super().dict(*args, **kwargs)
+ for field, value in data.items():
+ if isinstance(value, datetime.datetime):
+ data[field] = value.isoformat()
+
+ return data