[Zope] __getitem__ and returning a PageTemplateFile instance
Anders Bruun Olsen
anders at bruun-olsen.net
Fri Oct 21 09:06:14 EDT 2005
On Thu, Oct 20, 2005 at 09:43:24PM +0200, Dieter Maurer wrote:
> >asonhe is not there, but vitester has a __getitem__ method which
> >executes a PageTemplateFile instance and returns it. I.e.
> Thus, it returns a string.
> However, ZPublisher requires that all intermediate traversal
> steps return an object which is not of a simple type and does
> have a docstring. A string is a simple type, you cannot use it
> during traversal...
Ahh.. that makes sense I guess. It just seems counterintuitive that you
can return a string in a normal function, but not in __getitem__.
> >But that way I can't put any values in there. How can I do this then?
> Can can return a wrapper and give it a docstring.
> class Wrapper:
> '''a wrapper around a string.''' # this is the docstring
> def __init__(self, str):
> self.str = str
> def __call__(self): return self.str
> Some security declarations might be necessary as well.
> Probably, a class attribute "__roles__ = None" is sufficient.
Okay, that will work.
Thanks so much for your help, I really appreciated it.
--
Anders
-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GCS/O d--@ s:+ a-- C++ UL+++$ P++ L+++ E- W+ N(+) o K? w O-- M- V
PS+ PE@ Y+ PGP+ t 5 X R+ tv+ b++ DI+++ D+ G e- h !r y?
------END GEEK CODE BLOCK------
PGPKey: http://random.sks.keyserver.penguin.de:11371/pks/lookup?op=get&search=0xD4DEFED0
More information about the Zope
mailing list