Files
agentic-studio/kipina-codebench/golden-examples/blog/schemas.py

38 lines
841 B
Python

"""Pydantic v2 -skeemat — Create sisääntulolle, Response vastaukselle."""
from datetime import datetime
from pydantic import BaseModel, ConfigDict
class AuthorCreate(BaseModel):
"""Uuden kirjoittajan luonti. Pakolliset: name, email."""
name: str
email: str
bio: str | None = None
class AuthorResponse(AuthorCreate):
"""Palautettava kirjoittaja — sisältää id:n."""
id: int
model_config = ConfigDict(from_attributes=True)
class PostCreate(BaseModel):
"""Uuden postauksen luonti. Pakolliset: title, content, author_id."""
title: str
content: str
author_id: int
published_at: datetime | None = None
status: str = "draft"
class PostResponse(PostCreate):
"""Palautettava postaus — sisältää id:n."""
id: int
model_config = ConfigDict(from_attributes=True)