Files
gartenmanager/backend/app/schemas/tenant.py
Faultier314 b58edfc6eb chore: save session state – feature/phase-1 ready to implement
- Update session-context.md with exact resume point for next session
- Update settings.local.json with broader git permissions
- feature/grundstruktur merged to develop
- PAT authentication configured

Version: 0.2.3
2026-04-05 23:24:21 +02:00

46 lines
1.0 KiB
Python

import uuid
from datetime import datetime
from pydantic import BaseModel, field_validator
import re
class TenantBase(BaseModel):
name: str
slug: str
@field_validator("slug")
@classmethod
def slug_format(cls, v: str) -> str:
if not re.match(r"^[a-z0-9-]+$", v):
raise ValueError(
"Der Slug darf nur Kleinbuchstaben, Zahlen und Bindestriche enthalten."
)
return v
class TenantCreate(TenantBase):
pass
class TenantUpdate(BaseModel):
name: str | None = None
slug: str | None = None
@field_validator("slug")
@classmethod
def slug_format(cls, v: str | None) -> str | None:
if v is not None and not re.match(r"^[a-z0-9-]+$", v):
raise ValueError(
"Der Slug darf nur Kleinbuchstaben, Zahlen und Bindestriche enthalten."
)
return v
class TenantRead(TenantBase):
model_config = {"from_attributes": True}
id: uuid.UUID
created_at: datetime
updated_at: datetime