Hi, Am Do, den 04.11.2004 schrieb Asad Habib um 21:07:
Hello. Is there a way to pass a variable for the id argument to manage_addFile? I want the user to be able to choose the id for a file that they wish to upload instead of hard-coding it in as a string literal.
I have tried the following code which is inside a Python script:
fileName = REQUEST.form['publicationsFile'] context.manage_addFile(id=fileName, file=fileName, title=' ', precondition=' ', content_type='application/pdf')
The error I get is as follows:
Error Type: Bad Request Error Value: The id "<ZPublisher.HTTPRequest.FileUpload instance at 0x46a0170>" contains characters illegal in URLs.
However, if I use a string literal, everything works fine. The following yields no errors but doesn't serve my purpose:
fileName = REQUEST.form['publicationsFile'] context.manage_addFile(id='fileName', file=fileName, title=' ', precondition=' ', content_type='application/pdf')
Also, if anyone knows of another method that could achieve the same purpose, please let me know. Any help would be greatly appreciated. Thanks.
if fileName is the name of the form element (<input type="file" name="fileName" /> Then it does not contain the name of the file but the file itself. The filename of that file is an attribute of that object. Access it via fileName.filename (You should consider a better name for your form element) Regards Tino