[Zope] getting base classes's (super class) _properties tuple

Andy McKay AndyM@ActiveState.com
Thu, 17 Aug 2000 12:30:18 -0700


Aargh isnt that annoying.

Gosh you are right im using lists of dictionaries... my Zope code is
correct, but that example is wrong. The example still works though...

--
     Andy McKay, Developer, ActiveState
     http://www.ActiveState.com
     Programming for the People


----- Original Message -----
From: "Daniel Rusch" <drusch@globalcrossing.com>
To: "Andy McKay" <AndyM@activestate.com>; <zope@zope.org>
Sent: Thursday, August 17, 2000 12:19 PM
Subject: Re: [Zope] getting base classes's (super class) _properties tuple


> I can't believe it, but I didn't have the last comma ({'b':'B',
'bb':'BB'}, )
> and that's what was killing me .....agh
>
> BTW, I noticed you are using lists of dictionaries instead of the
"standard"
> tuple of dictionaries. I don't  know if there are any consequences to
doing
> this.  Anyway, since yours are lists you should be able to to do this:
>
> class A:
>     _properties = [ {'a':'A', 'aa':'AA'}, ]
>
> class B(A):
>     _properties = [ {'b':'B', 'bb':'BB'}, ]
>     _properties.append(A._properties)
>
> not that it realy matters.
>
> Thanks,
>
> Dan
>
> Andy McKay wrote:
>
> > class A:
> >     _properties = [ {'a':'A', 'aa':'AA'}, ]
> >
> > class B(A):
> >     _properties = [ {'b':'B', 'bb':'BB'}, ]
> >     _properties = _properties + A._properties
> >
> > b = B()
> > print b._properties
> >
> > Works for me.
> > --
> >      Andy McKay, Developer, ActiveState
> >      http://www.ActiveState.com
> >      Programming for the People
> >
> > ----- Original Message -----
> > From: "Daniel Rusch" <drusch@globalcrossing.com>
> > To: <zope@zope.org>
> > Sent: Thursday, August 17, 2000 11:30 AM
> > Subject: [Zope] getting base classes's (super class) _properties tuple
> >
> > > Say I have a fully functional (and more importantly, working) Product
> > > will call A.
> > >
> > > I want to extend this Product's capabilities so I wish to derive
another
> > >
> > > class from it, call it B.
> > >
> > > No problem,
> > >
> > > class B(A):
> > >     .........
> > >
> > > now in class B I want to add a new property.
> > >
> > > Is the a way of getting the base (super) class _properties tuple and
> > > just adding the new one to it. Since a tuple is an immutable object I
> > > can't do this:
> > > _properties=A._properties.append({'id':'RenderStandardHeader',
> > > 'type':'int','mode':'w'})
> > >
> > > Any thoughts ????
> > >
> > > DR
> > >
> > >
> > > _______________________________________________
> > > Zope maillist  -  Zope@zope.org
> > > http://lists.zope.org/mailman/listinfo/zope
> > > **   No cross posts or HTML encoding!  **
> > > (Related lists -
> > >  http://lists.zope.org/mailman/listinfo/zope-announce
> > >  http://lists.zope.org/mailman/listinfo/zope-dev )
> > >
> >
> > _______________________________________________
> > Zope maillist  -  Zope@zope.org
> > http://lists.zope.org/mailman/listinfo/zope
> > **   No cross posts or HTML encoding!  **
> > (Related lists -
> >  http://lists.zope.org/mailman/listinfo/zope-announce
> >  http://lists.zope.org/mailman/listinfo/zope-dev )
>
>
> _______________________________________________
> Zope maillist  -  Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> **   No cross posts or HTML encoding!  **
> (Related lists -
>  http://lists.zope.org/mailman/listinfo/zope-announce
>  http://lists.zope.org/mailman/listinfo/zope-dev )
>