psqlextra/manager/manager.py
def update(self, **fields):
        """Updates all rows that match the filter."""

        # build up the query to execute
        self._for_write = True
        if django.VERSION >= (2, 0):
            query = self.query.chain(UpdateQuery)
        else:
            query = self.query.clone(UpdateQuery)
        query._annotations = None
        query.add_update_values(fields)

        # build the compiler for for the query
        connection = django.db.connections[self.db]
        compiler = PostgresReturningUpdateCompiler(query, connection, self.db)

        # execute the query
        with transaction.atomic(using=self.db, savepoint=False):
            rows = compiler.execute_sql(CURSOR)
        self._result_cache = None

        # send out a signal for each row
        for row in rows:
            signals.update.send(self.model, pk=row[0])

        # the original update(..) returns the amount of rows
        # affected, let's do the same
        return len(rows)
def update(self, **fields):
        # build up the query to execute
        self._for_write = True
        if django.VERSION >= (2, 0):
            query = self.query.chain(UpdateQuery)
        else:
            query = self.query.clone(UpdateQuery)
        query._annotations = None
        query.add_update_values(fields)

        # build the compiler for for the query
        connection = django.db.connections[self.db]
        compiler = PostgresReturningUpdateCompiler(query, connection, self.db)

        # execute the query
        with transaction.atomic(using=self.db, savepoint=False):
            rows = compiler.execute_sql(CURSOR)
        self._result_cache = None

        # send out a signal for each row
        for row in rows:
            signals.update.send(self.model, pk=row[0])

        # the original update(..) returns the amount of rows
        # affected, let's do the same
        return len(rows)
def update ( self , * * fields ) : # build up the query to execute self . _for_write = True if django . VERSION >= ( 2 , 0 ) : query = self . query . chain ( UpdateQuery ) else : query = self . query . clone ( UpdateQuery ) query . _annotations = None query . add_update_values ( fields ) # build the compiler for for the query connection = django . db . connections [ self . db ] compiler = PostgresReturningUpdateCompiler ( query , connection , self . db ) # execute the query with transaction . atomic ( using = self . db , savepoint = False ) : rows = compiler . execute_sql ( CURSOR ) self . _result_cache = None # send out a signal for each row for row in rows : signals . update . send ( self . model , pk = row [ 0 ] ) # the original update(..) returns the amount of rows # affected, let's do the same return len ( rows )
Updates all rows that match the filter.
Updates all rows that match the filter .