improved upload logic, thanks Marin
This commit is contained in:
@@ -1 +1 @@
|
|||||||
Version 2.00.0 (2012-08-03 08:57:50) dev
|
Version 2.00.0 (2012-08-03 09:01:00) dev
|
||||||
|
|||||||
+12
-6
@@ -1229,16 +1229,22 @@ class SQLFORM(FORM):
|
|||||||
continue # do not update if password was not changed
|
continue # do not update if password was not changed
|
||||||
elif field.type == 'upload':
|
elif field.type == 'upload':
|
||||||
f = self.vars[fieldname]
|
f = self.vars[fieldname]
|
||||||
f = f if not f in (None,'') else self.table[fieldname].default
|
|
||||||
fd = '%s__delete' % fieldname
|
fd = '%s__delete' % fieldname
|
||||||
if f == '' or f is None:
|
if f == '' or f is None:
|
||||||
if self.vars.get(fd, False) or not self.record:
|
if self.vars.get(fd, False):
|
||||||
fields[fieldname] = ''
|
f = self.table[fieldname].default or ''
|
||||||
|
fields[fieldname] = f
|
||||||
|
elif self.record:
|
||||||
|
if self.record[fieldname]:
|
||||||
|
fields[fieldname] = self.record[fieldname]
|
||||||
|
else:
|
||||||
|
f = self.table[fieldname].default or ''
|
||||||
|
fields[fieldname] = f
|
||||||
else:
|
else:
|
||||||
fields[fieldname] = self.record[fieldname]
|
fields[fieldname] = ''
|
||||||
self.vars[fieldname] = fields[fieldname]
|
self.vars[fieldname] = fields[fieldname]
|
||||||
continue
|
if not f: continue
|
||||||
elif hasattr(f, 'file'):
|
if hasattr(f, 'file'):
|
||||||
(source_file, original_filename) = (f.file, f.filename)
|
(source_file, original_filename) = (f.file, f.filename)
|
||||||
elif isinstance(f, (str, unicode)):
|
elif isinstance(f, (str, unicode)):
|
||||||
f = os.path.join(current.request.folder,
|
f = os.path.join(current.request.folder,
|
||||||
|
|||||||
Reference in New Issue
Block a user