Removed unnecessary update() optimization

This commit is contained in:
Simon Willison 2020-09-24 07:55:04 -07:00
commit dfe91a8a44

View file

@ -3,7 +3,6 @@ from collections import namedtuple, OrderedDict
import contextlib import contextlib
import datetime import datetime
import decimal import decimal
import functools
import hashlib import hashlib
import inspect import inspect
import itertools import itertools
@ -1278,28 +1277,19 @@ class Table(Queryable):
sql += " where " + where sql += " where " + where
self.db.execute(sql, where_args or []) self.db.execute(sql, where_args or [])
def update( def update(self, pk_values, updates=None, alter=False, conversions=None):
self,
pk_values,
updates=None,
alter=False,
conversions=None,
assume_exists=False,
pks=None,
):
updates = updates or {} updates = updates or {}
pks = pks or self.pks
conversions = conversions or {} conversions = conversions or {}
if not isinstance(pk_values, (list, tuple)): if not isinstance(pk_values, (list, tuple)):
pk_values = [pk_values] pk_values = [pk_values]
# Soundness check that the record exists (raises error if not): # Soundness check that the record exists (raises error if not):
if not assume_exists: self.get(pk_values)
self.get(pk_values)
if not updates: if not updates:
return self return self
args = [] args = []
sets = [] sets = []
wheres = [] wheres = []
pks = self.pks
validate_column_names(updates.keys()) validate_column_names(updates.keys())
for key, value in updates.items(): for key, value in updates.items():
sets.append("[{}] = {}".format(key, conversions.get(key, "?"))) sets.append("[{}] = {}".format(key, conversions.get(key, "?")))