[Zope] How To Convert Files To Page Templates?

Maciej Wisniowski maciej.wisniowski at coig.katowice.pl
Tue Nov 7 13:59:26 EST 2006


> I confess I'm still quite green at programming, so if I'm wrong, please don't be too harsh ;) Any direction would be appreciated.
> TIA,
I'm not sure whether it is what you're looking for but
it may be one of simplest solutions that you may
change if you need to. As Andreas said before,
ask a specific question :)

1. Log into ZMI and create a folder called 'Myfiles'

2. upload your files via FTP or something into 'Myfiles' folder
and as you said before they should appear as 'File' objects

3. Create a file 'files2zpt.py' in the 'Extensions/' folder of your Zope
instance (filesystem, not ZMI) and fill it with this code:

#----------------
from Products.PageTemplates.ZopePageTemplate import ZopePageTemplate

def files2zpt(self):
    for fname, fobj in self.objectItems('File'):
        self._setObject(fname+'_zpt', ZopePageTemplate(fname+'_zpt', 
str(fobj.data)))
    return 'ok'
#-----------------

4. Go back to ZMI and to 'Myfiles/' folder and create 'External method' 
there
by simply filling all fields in the add form as 'files2zpt'

5. Click on your new External method files2zpt in ZMI and 'Test' it :)

Thats all

HTH

BTW. I tested this on Zope 2.8.8

-- 
Maciej Wisniowski


More information about the Zope mailing list