fixed issue 1262, table.insert() empty, thanks Alan

This commit is contained in:
mdipierro
2013-01-09 10:18:42 -06:00
parent 65bc1062f5
commit 4ce3ebf1fd
2 changed files with 14 additions and 3 deletions
+1 -1
View File
@@ -1 +1 @@
Version 2.4.1-alpha.2+timestamp.2013.01.09.09.16.07 Version 2.4.1-alpha.2+timestamp.2013.01.09.10.17.54
+11
View File
@@ -8044,10 +8044,21 @@ class Table(object):
raise RuntimeError("Unable to handle upload") raise RuntimeError("Unable to handle upload")
fields[field.name] = new_name fields[field.name] = new_name
def _defaults(self, fields):
"If there are no fields/values specified, return table defaults"
if not fields:
fields = {}
for field in self:
if field.type != "id":
fields[field.name] = field.default
return fields
def _insert(self, **fields): def _insert(self, **fields):
fields = self._default(fields)
return self._db._adapter._insert(self, self._listify(fields)) return self._db._adapter._insert(self, self._listify(fields))
def insert(self, **fields): def insert(self, **fields):
fields = self._defaults(fields)
self._attempt_upload(fields) self._attempt_upload(fields)
if any(f(fields) for f in self._before_insert): return 0 if any(f(fields) for f in self._before_insert): return 0
ret = self._db._adapter.insert(self, self._listify(fields)) ret = self._db._adapter.insert(self, self._listify(fields))