a
This commit is contained in:
commit
40266cc6e5
191 changed files with 5022 additions and 0 deletions
46
Backend/schemas/guestbook.py
Normal file
46
Backend/schemas/guestbook.py
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
from datetime import datetime
|
||||
from pydantic import BaseModel, field_validator
|
||||
|
||||
|
||||
class GuestBookCreate(BaseModel):
|
||||
content: str
|
||||
target_user_id: int
|
||||
|
||||
@field_validator("content")
|
||||
@classmethod
|
||||
def validate_content(cls, v):
|
||||
if len(v.strip()) < 1:
|
||||
raise ValueError("GuestBook content cannot be empty")
|
||||
if len(v) > 2000:
|
||||
raise ValueError("GuestBook content must be less than 2000 characters")
|
||||
return v.strip()
|
||||
|
||||
|
||||
class GuestbookUpdate(BaseModel):
|
||||
content: str
|
||||
|
||||
|
||||
class GuestbookResponse(BaseModel):
|
||||
id: int
|
||||
content: str
|
||||
target_user_id: int
|
||||
user_id: int
|
||||
user_profile_path: str
|
||||
username: str
|
||||
created_at: datetime
|
||||
|
||||
|
||||
class GuestBook:
|
||||
def __init__(
|
||||
self,
|
||||
id: int,
|
||||
target_user_id: int,
|
||||
user_id,
|
||||
content,
|
||||
created_at: datetime,
|
||||
):
|
||||
self.id = id
|
||||
self.target_user_id = target_user_id
|
||||
self.user_id = user_id
|
||||
self.content = content
|
||||
self.created_at = created_at
|
||||
Loading…
Add table
Add a link
Reference in a new issue