[Zope] contents of File as string: acquisition wrapper problem
Tino Wildenhain
tino at wildenhain.de
Fri Aug 27 17:46:45 EDT 2004
Hi,
Am Fr, den 27.08.2004 schrieb John Hunter um 22:08:
> What is the proper way to get the contents of a File as a string from
> the python API?
>
> I am doing
>
> zip = zipfile.ZipFile(tmpfile, 'w')
>
> for fileo in self._subfileFolder.objectValues('File'):
> fname = fileo.getId()
> zip.writestr(fname, fileo.data)
> zip.close()
>
> But the call to writestr raises
>
>
> Error Type: TypeError
> Error Value: crc32() argument 1 must be string or read-only buffer, not ImplicitAcquirerWrapper
>
> Traceback (innermost last):
>
> * Module ZPublisher.Publish, line 101, in publish
> * Module ZPublisher.mapply, line 88, in mapply
> * Module ZPublisher.Publish, line 39, in call_object
> * Module Products.irbworkflow.CRCFlow, line 1603, in all_zipped
> * Module zipfile, line 460, in writestr
>
> TypeError: crc32() argument 1 must be string or read-only buffer, not ImplicitAcquirerWrapper
>
>
> So it appears data is wrapped by the acquisition machinery.
>
> Any ideas?
put str() around the fileo.data or use the objects read() method IIRC.
Regards
Tino
More information about the Zope
mailing list