[Zope] Setting a ZObject's title in its constructor
Rob Thorne
rob@torenware.com
Sun, 16 Feb 2003 13:08:58 -0800
Folks,
I got this working. Since the fix wasn't obvious, I'm documenting it here.
ZClass objects inherit from ZObject. Apparently, either a ZObject does
not have a "title" attribute, or at the very least, does not have a
"title" attribute that you can change.
The fix is to make sure that your ZClass has a "title" property.
Once you do this, constructor code like the example below will set the
"title" property without error, and a title for the object will appear
in the ZMI.
Cheers,
Rob
Rob Thorne wrote:
> Using 2.6.1, I'm trying to get the constructor of a ZClass to
> dynamically assign the ID, and set the title from data passed to the
> constructor. Setting the ID works fine; setting the title isn't
> working at all.
>
> From the constructor:
>
> *# Create an ID dynamically
> timestamp = "SHLH-%X" % int(context.ZopeTime())
> request.set('id', timestamp)
>
> request.set('title', 'My title')
> #request.set('title', request.form['Sender_Name'])
>
> instance = container.MyZClass.createInObjectManager(request['id'],
> request)
> *
>
> Why does this work for 'id', but not for 'title'? Older code samples
> using dtml seem to have set both attributes the same way.
>
> Thanks,
> Rob**
> **
>
--
Rob Thorne
Torenware Networks
http://www.torenware.com