From 787ebe3e635b8bce47c93b8a2429707709d09237 Mon Sep 17 00:00:00 2001 From: Alex Root Junior Date: Tue, 28 Nov 2017 17:22:46 +0200 Subject: [PATCH] Set default values for not specified fields in payload. // TelegramObject --- aiogram/types/base.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/aiogram/types/base.py b/aiogram/types/base.py index da802ae3..7a4bdd56 100644 --- a/aiogram/types/base.py +++ b/aiogram/types/base.py @@ -75,12 +75,19 @@ class TelegramObject(metaclass=MetaTelegramObject): """ if conf is None: conf = {} + self._conf = conf + + # Load data for key, value in kwargs.items(): if key in self.props: self.props[key].set_value(self, value, parent=self) else: self.values[key] = value - self._conf = conf + + # Load default values + for key, value in self.props.items(): + if value.default and key not in self.values: + self.values[key] = value.default @property def conf(self) -> typing.Dict[str, typing.Any]: