Adnotarea @computed_field în Pydantic v2 în FastAPI

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

Includerea automată a proprietăților calculate dinamic în schema OpenAPI și în serializarea JSON către client.

Sintaxă
@computed_field @property def full_name(self) -> str:

În Pydantic v1, metodele decorate cu @property erau ignorate la serializarea în dicționar sau JSON. Pydantic v2 introduce adnotarea dedicată @computed_field.

Aceasta include proprietatea calculată direct în schema OpenAPI generată de FastAPI și o serializează automat în răspunsul JSON trimis clientului, fără a necesita stocarea unei valori duplicate în baza de date.

Exemplu: Câmp calculat dinamic în serializarea Pydantic
from pydantic import BaseModel, computed_field

class Rectangle(BaseModel):
    width: float
    height: float

    @computed_field
    @property
    def area(self) -> float:
        return self.width * self.height

# Când se serializează un Rectangle(width=10, height=5),
# JSON-ul returnat va fi automat:
# {"width": 10.0, "height": 5.0, "area": 50.0}

Comunitate & Schimb de cunoștințe

Întrebări & Exemple de Cod: Adnotarea @computed_field în Pydantic v2

Ai o nelămurire despre utilizarea comenzii Adnotarea @computed_field î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.