def update(self, **values):
        if not values:
            return

        nulled_columns = set()
        us = UpdateStatement(self.column_family_name, where=self._where, ttl=self._ttl,
                             timestamp=self._timestamp, conditionals=self._conditional, if_exists=self._if_exists)
        for name, val in values.items():
            col_name, col_op = self._parse_filter_arg(name)
            col = self.model._columns.get(col_name)
            # check for nonexistant columns
            if col is None:
                raise ValidationError("{0}.{1} has no column named: {2}".format(self.__module__, self.model.__name__, col_name))
            # check for primary key update attempts
            if col.is_primary_key:
                raise ValidationError("Cannot apply update to primary key '{0}' for {1}.{2}".format(col_name, self.__module__, self.model.__name__))

            # we should not provide default values in this use case.
            val = col.validate(val)

            if val is None:
                nulled_columns.add(col_name)
                continue

            us.add_update(col, val, operation=col_op)

        if us.assignments:
            self._execute(us)

        if nulled_columns:
            ds = DeleteStatement(self.column_family_name, fields=nulled_columns,
                                 where=self._where, conditionals=self._conditional, if_exists=self._if_exists)
            self._execute(ds)
Return a callable object that will calculate `outputs` from `inputs`.
dataset/ETHPy150Open datastax/python-driver/cassandra/cqlengine/query.py/ModelQuerySet.update--crossover with--dataset/ETHPy150Open rizar/attention-lvcsr/libs/Theano/theano/compile/function.py/function