>
> Here is some code:
>
> def copy():
> import os
> a = db.name(db.name.id== request.args(0))
> filepath = os.path.join(request.folder, 'uploads', a.file)
> stream = open(filepath, 'rb')
> db.name.insert(title= '%s_copy' % (a.title),
> file_up = db.name.file.store(stream, filepath
> ),
>
>
The second argument to .store() should be the original filename (which will
then be encoded again), not a full file path. To get the original filename,
use the .retrieve() method instead of manually constructing the file path
and opening the file:
filename, stream = db.name.file.retrieve(a.file)
db.name.insert(..., file=db.name.file.store(stream, filename))
Also, your use of a.file implies the upload field is named "file", but in
your insert code, you use "file_up" -- not sure which is correct.
Anthony
--
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
---
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.