Back to questions
Junior — Middle
55
В чем заключается использование Decorator для вычисляемых полей в модели pydantic?
Companies where asked
Код Открытия
Answer from AI
sobes.tech AI
В Pydantic для создания вычисляемых полей используется декоратор @property или специальный декоратор @pydantic.validator (для валидации), но чаще всего именно @property позволяет определить поле, значение которого вычисляется динамически на основе других полей модели.
Это полезно, когда нужно получить значение, которое не хранится напрямую, а вычисляется при обращении. Например:
from pydantic import BaseModel
class User(BaseModel):
first_name: str
last_name: str
@property
def full_name(self) -> str:
return f"{self.first_name} {self.last_name}"
Здесь full_name — вычисляемое поле, которое не передается при инициализации, но доступно как атрибут модели. Такой подход помогает держать логику вычислений внутри модели, сохраняя удобство доступа к данным.