Fix category data missing id & bad owner id
This commit is contained in:
parent
187a04e0fc
commit
e225151c48
|
@ -10,7 +10,7 @@ from src.api.auth.dependencies import LoggedInDep
|
||||||
from src.db.models.category import Category
|
from src.db.models.category import Category
|
||||||
from src.db.models.event import Event
|
from src.db.models.event import Event
|
||||||
from src.db.models.user import User
|
from src.db.models.user import User
|
||||||
from src.utils.db import MissingIdError, expr, update_document
|
from src.utils.db import MissingIdError, UnfetchedLinkError, expr, update_document
|
||||||
from src.utils.logging import get_logger
|
from src.utils.logging import get_logger
|
||||||
|
|
||||||
from .auth import CurrentUserDep
|
from .auth import CurrentUserDep
|
||||||
|
@ -42,6 +42,7 @@ class _BaseCategoryData(BaseModel):
|
||||||
class CategoryData(_BaseCategoryData):
|
class CategoryData(_BaseCategoryData):
|
||||||
"""Data about a category sent to the user."""
|
"""Data about a category sent to the user."""
|
||||||
|
|
||||||
|
id: PydanticObjectId
|
||||||
owner_user_id: PydanticObjectId
|
owner_user_id: PydanticObjectId
|
||||||
created_at: datetime
|
created_at: datetime
|
||||||
|
|
||||||
|
@ -51,10 +52,16 @@ class CategoryData(_BaseCategoryData):
|
||||||
if category.id is None:
|
if category.id is None:
|
||||||
raise MissingIdError(category)
|
raise MissingIdError(category)
|
||||||
|
|
||||||
|
if isinstance(category.user, Link):
|
||||||
|
raise UnfetchedLinkError(category.user)
|
||||||
|
if category.user.id is None:
|
||||||
|
raise MissingIdError(category.user)
|
||||||
|
|
||||||
return cls(
|
return cls(
|
||||||
|
id=category.id,
|
||||||
name=category.name,
|
name=category.name,
|
||||||
color=Color(category.color),
|
color=Color(category.color),
|
||||||
owner_user_id=category.id,
|
owner_user_id=category.user.id,
|
||||||
created_at=category.created_at,
|
created_at=category.created_at,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue