Clasa ConfigDict în Pydantic v2 în FastAPI

pydantic Pydantic v2 / FastAPI 0.100+ Q&A / Distribuie cod

Configurarea modernă a modelelor Pydantic: suport ORM pentru SQLAlchemy, respingerea câmpurilor neautorizate și protecție împotriva modificărilor.

Sintaxă
model_config = ConfigDict(from_attributes=True, extra='forbid')

În loc de vechea clasă internă class Config: din Pydantic v1, versiunea modernă folosește atributul de clasă model_config = ConfigDict(...), oferind suport complet pentru verificare de tipuri statice (MyPy / Pyright).

Setări esențiale în FastAPI:

  • from_attributes=True (înlocuitorul vechiului orm_mode=True): permite citirea automată a atributelor din instanțe de modele ORM (SQLAlchemy, Tortoise, SQLModel).
  • extra='forbid': Aruncă o eroare de validare dacă clientul trimite câmpuri suplimentare nedeclarate în model.
  • str_strip_whitespace=True: Elimină automat spațiile albe accidentale de la începutul și sfârșitul oricărui text.
Exemplu: Configurare ConfigDict cu suport ORM și interzicere câmpuri suplimentare
from pydantic import BaseModel, ConfigDict

class UserResponse(BaseModel):
    id: int
    email: str

    model_config = ConfigDict(
        from_attributes=True, # Compatibilitate directă cu obiecte SQLAlchemy
        extra="forbid",       # Respinge orice câmpuri necunoscute trimise
        str_strip_whitespace=True
    )

Comunitate & Schimb de cunoștințe

Întrebări & Exemple de Cod: Clasa ConfigDict în Pydantic v2

Ai o nelămurire despre utilizarea comenzii Clasa ConfigDict în Pydantic v2 sau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!

💬

Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!

Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.

Comunitate Adaugă o întrebare sau distribuie un cod

Moderare & Siguranță:

Pentru a menține calitatea și securitatea informațiilor, fiecare întrebare sau fragment de cod/prompt este analizat (manual sau prin moderare asistată de AI) înainte de publicare.