def init(self, **kwargs): self._api = kwargs.pop('api', None) try: urls = self._URL except AttributeError: urls = None self._data = DataContainer(urls=urls, api=self._api) self._dirty = {} self._compound_cache = {} for k, v in kwargs.items(): if k in fields: # handle compound fields if isinstance(fields[k], CompoundField): fields[k].validate(v) self._data[k] = v kwargs = dict(**v) kwargs.update({'api': self._api}) self._compound_cache[k] = fields[k].cls(**kwargs) # handle compound list fields elif isinstance(fields[k], CompoundListField): fields[k].validate(v) self._data[k] = [item for item in v] self._compound_cache[k] = [] for item in v: kwargs = dict(**item) kwargs.update({'api': self._api}) self._compound_cache[k].append( fields[k].cls(**kwargs)) else: fields[k].validate(v) self._data[k] = v
def init(self, **kwargs): self._api = kwargs.pop('api', None) urls = getattr(self, '_URL', None) self._data = DataContainer(urls=urls, api=self._api) self._dirty = {} for k, v in kwargs.items(): if k in fields: value = fields[k].validate(v) self._data[k] = value self._old = copy.deepcopy(self._data.data)
def init(self, **kwargs): self._api = kwargs.pop('api', None) try: urls = self._URL except AttributeError: urls = None self._data = DataContainer(urls=urls, api=self._api) self._dirty = {} for k, v in kwargs.items(): if k in fields: value = fields[k].validate(v) self._data[k] = value
def init(self, **kwargs): self._api = kwargs.pop('api', None) urls = getattr(self, '_URL', None) self._data = DataContainer( urls=urls, api=self._api, parent=self ) self._dirty = {} for key, value in kwargs.items(): if key in fields: validated_value = fields[key].validate(value) self._data[key] = validated_value self._old = copy.deepcopy(self._data.data)