This commit is contained in:
+4
-1
@@ -76,6 +76,7 @@ class TaskCreate(BaseModel):
|
||||
description: str = ""
|
||||
priority: int = Field(default=0, ge=0, le=3)
|
||||
due_at: datetime | None = None
|
||||
due_has_time: bool = False
|
||||
parent_id: UUID | None = None
|
||||
rrule: str | None = Field(default=None, min_length=5, max_length=1000)
|
||||
|
||||
@@ -85,13 +86,14 @@ class TaskUpdate(BaseModel):
|
||||
description: str | None = None
|
||||
priority: int | None = Field(default=None, ge=0, le=3)
|
||||
due_at: datetime | None = None
|
||||
due_has_time: bool | None = None
|
||||
completed: bool | None = None
|
||||
list_id: UUID | None = None
|
||||
version: int = Field(ge=1)
|
||||
|
||||
@model_validator(mode="after")
|
||||
def reject_null_non_nullable_fields(self):
|
||||
for field in ("title", "description", "priority", "completed", "list_id"):
|
||||
for field in ("title", "description", "priority", "completed", "list_id", "due_has_time"):
|
||||
if field in self.model_fields_set and getattr(self, field) is None:
|
||||
raise ValueError(f"{field} cannot be null")
|
||||
return self
|
||||
@@ -117,6 +119,7 @@ class TaskOut(BaseModel):
|
||||
priority: int
|
||||
completed: bool
|
||||
due_at: datetime | None
|
||||
due_has_time: bool
|
||||
version: int
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user