Thanks a lot!!!

After some trials i noticed that request.vars.upload is a stream connected
to the file and i found out another solution. Tomorrow I'll try to do how
you suggested,

bye!!

2010/7/19 mdipierro <[email protected]>

> if you use
>
>   form=SQLFORM(db.my_images)
>
> or
>
>   form=crud.create(db_myimages,formstyle='table3cols')
>
> You do not need the manual insert. If you choose the manual insert it
> should be
>
>
>
>
> db.my_images.insert(name=[some_name],image=db.my_images.upload.store(request.vars.upload.file,request.vars.upload.filename))
>
> This is because request.vars.upload is a stream connected to the file
> to upload. The store method loads it in a temp file and returns the
> new temp name for it. Only this new name gets stored in the db, not
> the entire image (unless you set uploadfield='some blob field').
>
> Massimo
>
> On Jul 19, 9:20 am, Simone <[email protected]> wrote:
> > Hi,
> >
> > I'm using web2py with Oracle 10 and I'm having a problem trying to
> > upload a file:
> >
> > in db.py I have:
> > db.define_table('my_images',Field('name','string'),Field('image',
> > 'upload'))
> >
> > I have an html form whre the user chose wich file to upload. When the
> > form is submitted i do the following:
> > db.my_images.insert(name=[some_name],image=request.vars.upload) and
> > then i got the error ORA-01704: string literal too long.
> >
> > request.vars.upload value is  C:\temp\a.jpg
> >
> > Can anybody help me??
>

Reply via email to