Thanks everybody for your suggestions! I went with what Bruno suggested and it worked like a champ! I figured I wouldn't be able to bypass the upload security mechanism, but the uploadfolder parameter was the key piece I needed to get the desired behavior.
On Dec 14, 11:57 am, Bruno Rocha <rochacbr...@gmail.com> wrote: > For security reasons, web2py does not expose the 'uploads' folder to the > user, this folder can be accessed only by the 'download' function. > > You can do that: > > change the upload folder with 'uploadfolder' parameter. > > <model> > db.define_table('pdfs', > > Field('file','upload',uploadfolder=request.folder+'static/pdfs') > ) > </model> > > Create a viewer function wich redirects the user direct to the file, then, > if the user has adobe acrobat plugin to view the file in browser, this file > will be shown in the browser, else, will be downloaded. > > <controller> > def viewer(): > row = db(db.pdfs.id==request.args(0)).select(db.pdfs.file).first() > redirect(URL('static','pdfs',args=row.file)) > </controller> > > Now you can call this as: > > http://127.0.0.1:8000/pdfs/default/viewer/3#record id > > which redirects the user > to:http://127.0.0.1:8000/pdfs/static/pdfs/pdfs.file.aaf5d3f7779841d0.6e6... > > -- > > Bruno Rochahttp://about.me/rochacbruno/bio > > 2010/12/14 azarkowsky <azarkow...@gmail.com> > > > > > > > > > In my web2py application I'm allowing users to upload PDF documents > > (via an upload field) and then on another page I provide a download > > link, however, I think because of the file renaming security feature > > these PDF documents are truly being downloaded again (saved locally to > > each user's desktop) instead of just displayed in a new browser window > > as is the case with most other PDFs I encounter on other websites. Is > > there any way to provide a link directly to a file that was uploaded > > so the browser can display it without having to download the file > > again? > > > Thanks, > > Adam