Fix object item assignment.

This commit is contained in:
Alex Root Junior 2017-10-21 20:56:48 +03:00
parent 89dc148ef5
commit 4bf5409295
2 changed files with 5 additions and 7 deletions

View file

@ -183,15 +183,13 @@ class TelegramObject(metaclass=MetaTelegramObject):
def __getitem__(self, item):
if item in self.props:
return getattr(self, item)
elif item in self.values:
return self.values[item]
return self.props[item].get_value(self)
raise KeyError(item)
def __setitem__(self, key, value):
if key in self.props:
setattr(self, key, value)
else:
self.values[key] = value
return self.props[key].set_value(self, value, self.conf.get('parent', None))
raise KeyError(key)
def __contains__(self, item):
self.clean()

View file

@ -71,7 +71,7 @@ class BaseField(metaclass=abc.ABCMeta):
pass
@abc.abstractmethod
def deserialize(self, value):
def deserialize(self, value, parent=None):
"""Deserialize python object value to TelegramObject value"""
pass