Added error check to _upsert_pre_check(), res = None when error
This commit is contained in:
parent
7fd1a71506
commit
e7f45b2a68
@ -183,20 +183,23 @@ class Table(object):
|
|||||||
|
|
||||||
def _upsert_pre_check(self, row, keys, ensure):
|
def _upsert_pre_check(self, row, keys, ensure):
|
||||||
# check whether keys arg is a string and format as a list
|
# check whether keys arg is a string and format as a list
|
||||||
if not isinstance(keys, (list, tuple)):
|
try:
|
||||||
keys = [keys]
|
if not isinstance(keys, (list, tuple)):
|
||||||
self._check_dropped()
|
keys = [keys]
|
||||||
|
self._check_dropped()
|
||||||
|
|
||||||
ensure = self.database.ensure_schema if ensure is None else ensure
|
ensure = self.database.ensure_schema if ensure is None else ensure
|
||||||
if ensure:
|
if ensure:
|
||||||
self.create_index(keys)
|
self.create_index(keys)
|
||||||
|
|
||||||
filters = {}
|
filters = {}
|
||||||
for key in keys:
|
for key in keys:
|
||||||
filters[key] = row.get(key)
|
filters[key] = row.get(key)
|
||||||
|
|
||||||
res = self.find_one(**filters)
|
|
||||||
|
|
||||||
|
res = self.find_one(**filters)
|
||||||
|
except:
|
||||||
|
res = None
|
||||||
|
|
||||||
return res
|
return res
|
||||||
|
|
||||||
def upsert(self, row, keys, ensure=None, types={}):
|
def upsert(self, row, keys, ensure=None, types={}):
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user