26 lines
619 B
Python
26 lines
619 B
Python
from typing import Optional
|
|
|
|
from pydantic import BaseModel, Field
|
|
|
|
|
|
class VehicleBase(BaseModel):
|
|
vehicle_no: str = Field(min_length=1, max_length=255, alias="vehicleNo")
|
|
remarks: Optional[str] = Field(default=None)
|
|
|
|
model_config = {"from_attributes": True, "populate_by_name": True}
|
|
|
|
|
|
class VehicleCreate(VehicleBase):
|
|
pass
|
|
|
|
|
|
class VehicleUpdate(BaseModel):
|
|
vehicle_no: Optional[str] = Field(default=None, min_length=1, max_length=255, alias="vehicleNo")
|
|
remarks: Optional[str] = Field(default=None)
|
|
|
|
model_config = {"populate_by_name": True}
|
|
|
|
|
|
class VehicleRead(VehicleBase):
|
|
id: str
|