On Tue, 07 Nov 2000 11:54:57 +0000, Chris Withers <chrisw@nipltd.com> wrote:
I have a product class that subclasses SimpleItem and PropertyManager.
If I try and add a property in __init__ as so:
self.manage_addProperty('AProperty','1\n2\n3','lines')
I get the following wonderful error:
Error Type: AttributeError Error Value: aq_base
I'm guessing that this is because self isn't an acquisition wrapper in __init__ (even though SimpleItem is Acquisition.Implicit) but what am I supposed to do to add a property in __init__?
__init__ has no idea of context, so its less useful in Zope than you might usually expect. Your object must have a factory method somewhere.... I suggest adding an extra method to your object (I always name it '_after_create') and arrange for it to be called by your factory once the new object is installed in its container. Toby Dickenson tdickenson@geminidataloggers.com