Dennis Allison wrote:
In an External Method (that is, unrestricted python), for example, when you create a Folder one writes:
self.manage_addProduct['OFSP'].manage_addFolder( id,title="folder")
one would think that it would return the object it just constructed so it would be easy to use the new product to, say, create another folder or a file inside. But that appears not to be the case. (In my example, the folder was successfully created but the code
handle = self.manage_addProduct...
returned None. That made what I thought was the obvious way to handle things, namely applying the constructor to the new folder using
handle = self.manage_addProduct...
Here is a short example on how to create a new Folder containing a DTMLMethod Assumed there is a my_html.dtml file in your product directory : import OFS.Folder from OFS.DTMLMethod import DTMLMethod from Globals import HTMLFile dtml_template=HTMLFile('my_html',globals()) dtml_obj=DTMLMethod() dtml_obj.id='my_html' index_obj.manage_edit(data=dtml_template,title='Welcome Home') folder_obj=OFS.Folder.Folder() folder_obj.id='NewFolder' folder_obj._setObject('my_html',index_obj) self._setObject('NewFolder',folder_obj) -- _______________________________________________________________________ Andreas Heckel andreas@easyleading.org