[Zope-CMF] Conflict between PortalFolder and CMFBTreeFolder
Christian Heimes
christian at cheimes.de
Sun Jun 19 19:22:12 EDT 2005
CMF 1.5's implementation of PortalFolder conflicts with CMFBTreeFolder.
CMF 1.4:
class PortalFolder(DynamicType, CMFCatalogAware, Folder)
CMF 1.5:
class PortalFolder(DynamicType, CMFCatalogAware, OrderedFolder)
BTreeFolder2:
class CMFBTreeFolder(BTreeFolder2Base, PortalFolder)
traceback:
File
"/opt/zope/instances/plone21z28cmf15/Products/ATContentTypes/content/base.py",
line 312, in processForm
self.setId(new_id)
File "/opt/zope/instances/plone21/Products/Archetypes/BaseObject.py",
line 231, in setId
parent.manage_renameObject(
File
"/opt/zope/releases/Zope-2_8-branch/lib/python/OFS/OrderSupport.py",
line 255, in manage_renameObject
old_position = self.getObjectPosition(id)
File
"/opt/zope/releases/Zope-2_8-branch/lib/python/OFS/OrderSupport.py",
line 222, in getObjectPosition
return ids.index(id)
AttributeError: 'OOBTreeItems' object has no attribute 'index'
As you can see CMFBTreeFolder doesn't work any more because PortalFolder
is now subclassed from OrderedFolder. The changes to PortalFolder are
*not* backward compatible. IMO they should be reverted and an
OrderedPortalFolder class should be created for people how like to have
ordered folders in CMF.
Christian
More information about the Zope-CMF
mailing list