From d57268f2cec4d858a8b4a8a9f5da18cb982f5a84 Mon Sep 17 00:00:00 2001 From: Valentin CZERYBA Date: Thu, 4 Sep 2025 21:53:31 +0200 Subject: [PATCH] fix model eventout with str --- app/models/events.py | 32 ++++++++++++++++++++++---------- 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/app/models/events.py b/app/models/events.py index 1d49575..b097cf2 100644 --- a/app/models/events.py +++ b/app/models/events.py @@ -1,26 +1,34 @@ from pydantic import BaseModel, EmailStr from pydantic_mongo import AbstractRepository, ObjectIdField from datetime import datetime, date +from bson import ObjectId +from typing import List, Optional class Event(BaseModel): id: ObjectIdField = None name: str place: str description: str - imgUrl: str | None = None + imgUrl: Optional[str] = None status: int = 0 latitude: float = 0.0 longitude: float = 0.0 - link: str | None = None - ticket: str | None = None - organizers: list[str] = [] - tags: list[str] = [] - start_date: datetime | None = None - end_date: datetime | None = None + link: Optional[str] = None + ticket: Optional[str] = None + organizers: List[str] = [] + tags: List[str] = [] + start_date: Optional[datetime] = None + end_date: Optional[datetime] = None created_at: datetime = datetime.today() - updated_at: datetime | None = None - deleted_at: datetime | None = None - disabled_at: datetime | None = None + updated_at: Optional[datetime] = None + deleted_at: Optional[datetime] = None + disabled_at: Optional[datetime] = None + interested_users: List[ObjectId] = [] + + model_config = { + "arbitrary_types_allowed": True + } + class EventOut(BaseModel): id: str | None = None @@ -52,6 +60,10 @@ class EventOut(BaseModel): ) +class EventOutWithInterested(EventOut): + interested: bool = False + interested_count: int = 0 + class EventIn(BaseModel): name: str place: str