diff options
author | 2024-07-08 15:09:17 +0100 | |
---|---|---|
committer | 2024-07-08 15:09:17 +0100 | |
commit | 642c0795c8738bf8b9ae39b9cf0180f7cdbac650 (patch) | |
tree | 4a075255d00d9f8a2f369567bdb79f6eefa4be9a /backend/models/form_response.py | |
parent | Migration to official Sentry release CI action (#275) (diff) | |
parent | Stop using gunicorn and use uvicorn directly to run application (diff) |
Merge pull request #276 from python-discord/jb3/environ/python-3.12
3.12 + Updates
Diffstat (limited to 'backend/models/form_response.py')
-rw-r--r-- | backend/models/form_response.py | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/backend/models/form_response.py b/backend/models/form_response.py index 933f5e4..3c8297b 100644 --- a/backend/models/form_response.py +++ b/backend/models/form_response.py @@ -11,19 +11,20 @@ class FormResponse(BaseModel): """Schema model for form response.""" id: str = Field(alias="_id") - user: t.Optional[DiscordUser] - antispam: t.Optional[AntiSpam] + user: DiscordUser | None + antispam: AntiSpam | None response: dict[str, t.Any] form_id: str timestamp: str @validator("timestamp", pre=True) - def set_timestamp(cls, iso_string: t.Optional[str]) -> t.Optional[str]: + def set_timestamp(cls, iso_string: str | None) -> str: if iso_string is None: - return datetime.datetime.now(tz=datetime.timezone.utc).isoformat() + return datetime.datetime.now(tz=datetime.UTC).isoformat() - elif not isinstance(iso_string, str): - raise ValueError("Submission timestamp must be a string.") + if not isinstance(iso_string, str): + msg = "Submission timestamp must be a string." + raise TypeError(msg) # Convert to datetime and back to ensure string is valid return datetime.datetime.fromisoformat(iso_string).isoformat() @@ -33,4 +34,4 @@ class FormResponse(BaseModel): class ResponseList(BaseModel): - __root__: t.List[FormResponse] + __root__: list[FormResponse] |