22 lines
592 B
Python
22 lines
592 B
Python
"""Request/response schemas for the authenticated user's own ratings and
|
|||
|
|
watchlist (section 17, additive)."""
|
||
|
|
|
||
|
|
from __future__ import annotations
|
||
|
|
|
||
|
|
from datetime import datetime
|
||
|
|
|
||
|
|
from pydantic import BaseModel, Field
|
||
|
|
|
||
|
|
|
||
|
|
class RatingIn(BaseModel):
|
||
|
|
# 0.5-10.0 in practice (TMDb's own scale), enforced as a continuous
|
||
|
|
# range rather than an enum of 0.5 steps -- not worth the extra
|
||
|
|
# validation for a value nothing downstream treats as discrete.
|
||
|
|
value: float = Field(ge=0.5, le=10.0)
|
||
|
|
|
||
|
|
|
||
|
|
class RatingOut(BaseModel):
|
||
|
|
value: float
|
||
|
|
created_at: datetime
|
||
|
|
updated_at: datetime
|