[Zope] How to Update files that are already uploaded

Tino Wildenhain tino at wildenhain.de
Thu Dec 1 13:58:23 EST 2005


Am Donnerstag, den 01.12.2005, 12:12 -0500 schrieb Mike Jakowlew:
> Hi all,
> 
> I'm trying to update a file thats already been uploaded. I can't
> figure out what command to use,
> "update_data"/"manage_upload"/"manage_edit". I've settled (so far) on
> manage_upload but it doesn't work. I get the error: 
> 
> Error Type: AttributeError 
> Error Value:  manage_upload
> 
> my code:
> _________________________________________
> # Takes the filename from a form searches my ZSQL method for the
> existence of the file, and then should update the file. 
> 
> REQUEST=context.REQUEST
> filename = REQUEST.form.get('file')
> filename=filename.split('\\')[-1]
> 
> result=container.Show_filename_selected(filename=filename)
> if result:
>     fname= container.Show_filename_selected
> (filename=filename).tuples()[0][3]
>     context.manage_upload([filename,REQUEST])
>     return "File Exists... UPDATE: " + filename
> else:
>     return "File Does NOT Exist: " + filename
> _________________________________________ 
> 
> What am I doing wrong? Am I using the wrong command?

Well, first of all where comes the ZSQL Method into 
the game? ZODB is already a database and knows best
which objects exist and which do not.

Also you need to acquire the actual object if its there:

if has_attr(container.Filerepository,fileid):
	fileobj=getattr(container.Filerepository,fileid)
        fileobj.manage_upload( ...)
        return "File %s exists. Updated it." % fileid
else:
	container.Filerepository.manage_addFile(...)


sketchy but you should get the picture.








More information about the Zope mailing list