[REFORMAT] Ran black reformat
This commit is contained in:
@@ -1,7 +1,8 @@
|
||||
# modules/calendar/schemas.py
|
||||
from datetime import datetime
|
||||
from pydantic import BaseModel, field_validator # Add field_validator
|
||||
from typing import List, Optional # Add List and Optional
|
||||
from pydantic import BaseModel, field_validator # Add field_validator
|
||||
from typing import List, Optional # Add List and Optional
|
||||
|
||||
|
||||
# Base schema for common fields, including tags
|
||||
class CalendarEventBase(BaseModel):
|
||||
@@ -10,21 +11,23 @@ class CalendarEventBase(BaseModel):
|
||||
start: datetime
|
||||
end: Optional[datetime] = None
|
||||
location: Optional[str] = None
|
||||
color: Optional[str] = None # Assuming color exists
|
||||
all_day: Optional[bool] = None # Add all_day field
|
||||
tags: Optional[List[str]] = None # Add optional tags
|
||||
color: Optional[str] = None # Assuming color exists
|
||||
all_day: Optional[bool] = None # Add all_day field
|
||||
tags: Optional[List[str]] = None # Add optional tags
|
||||
|
||||
@field_validator('tags', mode='before')
|
||||
@field_validator("tags", mode="before")
|
||||
@classmethod
|
||||
def tags_validate_null_string(cls, v):
|
||||
if v == "Null":
|
||||
return None
|
||||
return v
|
||||
|
||||
|
||||
# Schema for creating an event (inherits from Base)
|
||||
class CalendarEventCreate(CalendarEventBase):
|
||||
pass
|
||||
|
||||
|
||||
# Schema for updating an event (all fields optional)
|
||||
class CalendarEventUpdate(BaseModel):
|
||||
title: Optional[str] = None
|
||||
@@ -33,23 +36,24 @@ class CalendarEventUpdate(BaseModel):
|
||||
end: Optional[datetime] = None
|
||||
location: Optional[str] = None
|
||||
color: Optional[str] = None
|
||||
all_day: Optional[bool] = None # Add all_day field
|
||||
tags: Optional[List[str]] = None # Add optional tags for update
|
||||
all_day: Optional[bool] = None # Add all_day field
|
||||
tags: Optional[List[str]] = None # Add optional tags for update
|
||||
|
||||
@field_validator('tags', mode='before')
|
||||
@field_validator("tags", mode="before")
|
||||
@classmethod
|
||||
def tags_validate_null_string(cls, v):
|
||||
if v == "Null":
|
||||
return None
|
||||
return v
|
||||
|
||||
|
||||
# Schema for the response (inherits from Base, adds ID and user_id)
|
||||
class CalendarEventResponse(CalendarEventBase):
|
||||
id: int
|
||||
user_id: int
|
||||
tags: List[str] # Keep as List[str], remove default []
|
||||
tags: List[str] # Keep as List[str], remove default []
|
||||
|
||||
@field_validator('tags', mode='before')
|
||||
@field_validator("tags", mode="before")
|
||||
@classmethod
|
||||
def tags_validate_none_to_list(cls, v):
|
||||
# If the value from the source object (e.g., ORM model) is None,
|
||||
@@ -59,4 +63,4 @@ class CalendarEventResponse(CalendarEventBase):
|
||||
return v
|
||||
|
||||
class Config:
|
||||
from_attributes = True
|
||||
from_attributes = True
|
||||
|
||||
Reference in New Issue
Block a user