def _patch(self, data):
        '''
        Update an instance from supplied data.
        '''

        errors = defaultdict(list)

        for name in self._field_names:
            try:
                value = data[name]
            except __HOLE__:
                continue
            try:
                setattr(self, name, value)
            except ValidationError as e:
                errors[name].append(e)

        self._errors = dict(errors)

        # Allow a final pass of cleaning
        self._clean(data, full=False)

        if self._errors:
            raise ValidationError(self._errors)

        return self._obj
dataset/ETHPy150Open funkybob/django-nap/nap/datamapper/mappers.py/DataMapper._patch