By the way I only want that form.process(dbio=False) just validate form, 
(so I set dbio=False), but what to do in order it would'n create uploaded 
files? I want to do it manually, because it saves photo in folder 
'...uploads/biography_{id}.photo_jpg/...' (I have named the form in this 
way because of validation collisions). Manually I upload to folder 
'.../uploads/biography_photo.photo_jpg/...' (named by table name) and now I 
have 2 copies of the same photo. Just suggestion: maybe accepts() 
shouldn'taccess uploaded/attached files if dbio=False 
at all?

2012 m. rugsėjis 12 d., trečiadienis 07:24:42 UTC+3, Donatas Burba rašė:
>
> Using web2py 2.0.8 and submitting form with attached photo file (standard 
> widget) and 'delete' (photo) checked I get such error: 
>
> Traceback (most recent call last):
>   File "/home/donatas/ProCursus/projects/web2py/gluon/restricted.py", line 
> 209, in restricted
>     exec ccode in environment
>   File 
> "/home/donatas/ProCursus/projects/web2py/applications/bow/controllers/plugin_biography.py",
>  line 4797, in <module>
>   File "/home/donatas/ProCursus/projects/web2py/gluon/globals.py", line 185, 
> in <lambda>
>     self._caller = lambda f: f()
>   File "/home/donatas/ProCursus/projects/web2py/gluon/tools.py", line 2783, 
> in f
>     return action(*a, **b)
>   File 
> "/home/donatas/ProCursus/projects/web2py/applications/bow/controllers/plugin_biography.py",
>  line 1022, in edit_biography_client
>     if form.process(dbio=False, 
> onvalidation=__check_biography_status).accepted:
>   File "/home/donatas/ProCursus/projects/web2py/gluon/html.py", line 2106, in 
> process
>     self.validate(**kwargs)
>   File "/home/donatas/ProCursus/projects/web2py/gluon/html.py", line 2053, in 
> validate
>     if self.accepts(**kwargs):
>   File "/home/donatas/ProCursus/projects/web2py/gluon/sqlhtml.py", line 1331, 
> in accepts
>     source_file = open(f, 'rb')
> IOError: [Errno 2] No such file or directory: 
> '/home/donatas/ProCursus/projects/web2py/applications/bow/biography_photo.photo_jpg.b85f77f1863e10a9.31365f425544494e41535f532e7469662e6a7067.jpg'
>
>
> I see that folder 'uploads' is missing in path. I think it's bug, because it 
> was working with v1.99.7. My model:
>
> db.define_table('biography_photo',
>
>     Field('biography_id', 'reference biography_biography', readable=False, 
> writable=False),
>     Field('photo_jpg', 'upload', label=T('biography_photo__photo'),
>           uploadfolder=os.path.join(request.folder, 'uploads'), 
> uploadseparate=True, autodelete=True,
>           represent = lambda value, row: A(row.photo_filename, 
> _href=URL('download', args=value))),
>     Field('photo_filename')
> )
>
>

-- 



Reply via email to