[Zope] Re: Question about dot in method name
bard stéphane
stephane.bard at gmail.com
Wed Mar 26 16:32:19 EDT 2008
__getitem__ raise an exception :
*Error Type: AttributeError*
*Error Value: 'super' object has no attribute '__getitem__'
my class derive from
(ObjectManager, BTreeFolder2, PropertyManager):
I test :
** (ObjectManager, Folder PropertyManager):*
**and got the same exception
the method of Sascha is working (This is a satisfaction). but i'm
very interesting to understand the method proposed by Martijn.
Martijn Jacobs a écrit :
> Hi Stéphane.
>
> Check out
> http://www.zope.org/Documentation/Books/ZDG/current/ObjectPublishing.stx
>
> See the heading "Traversal methods" where this is explained.
>
>
>
> Martijn.
>> Great, I should test this code tonight !
>> some more question : id don't understand the two different usage of
>> __getitem__
>> and __bobo_traverse__. __bobo_traverse__ seems to be a way to control
>> url walk and __getitem__ control the way attributs can be load by zope.
>>
>> If I change the URL when I use __bobo_traverse__ it works, and if I
>> change the way
>> I'm searching attributs in zope object tree it works too. Is it correct ?
>>
>>
>> 2008/3/26, Martijn Jacobs <martijn at fourdigits.nl
>> <mailto:martijn at fourdigits.nl>>:
>>
>>
>> If you have a zope product you can do something like this indeed :
>>
>> class MyContainer(Folder):
>> """My Folderish Product"""
>>
>> def mydoc_xls(self, REQUEST=None):
>> """My new xls method"""
>> return "My new xls method"
>>
>> def __getitem__(self, key):
>> """Check for mydoc.xls, then return mydoc_xls"""
>> if key == 'mydoc.xls':
>> return self.mydoc_xls
>> return super(Folder, self).__getitem__(key)
>>
>>
>>
>>> Hi!
>>> Hey, Tres, could you point us to a web example or a web page
>>> with more information about that technique?
>>> I'm very interested on it and the technique that was introduced
>>> sometime ago about how to return a string as __bobo_traverse__
>>> response but the example was uncompleted (for me at least)
>>>
>>> This kind of information was very useful for many of us but
>>> there are no good tutorial or how-to
>>>
>>> Thanks a lot!
>>>
>>> 2008/3/26, Tres Seaver <tseaver at palladion.com
>>> <mailto:tseaver at palladion.com>>:
>>>
>>> -----BEGIN PGP SIGNED MESSAGE-----
>>> Hash: SHA1
>>>
>>>
>>> Martijn Jacobs wrote:
>>> > Maybe a simple solution :
>>> >
>>> > Do you use apache as a frontend for your zope? If you do
>>> you can rewrite
>>> > the incoming url's for example like this :
>>> >
>>> > RewriteEngine On
>>> > RewriteRule ^/folder/mydoc.xls(.*)
>>> > http://localhost:8080/VirtualHostBase/http/myIntranet/object_in_zope/VirtualHostRoot/mydoc_xls$1
>>> > [L,P]
>>>
>>>
>>> Or add a '__getitem__' to your class that looks for that key
>>> and returns
>>> the right method.
>>>
>>>
>>> Tres.
>>> - --
>>> ===================================================================
>>> Tres Seaver +1
>>> 540-429-0999 tseaver at palladion.com
>>> <mailto:tseaver at palladion.com>
>>> Palladion Software "Excellence by
>>> Design" http://palladion.com
>>> -----BEGIN PGP SIGNATURE-----
>>> Version: GnuPG v1.4.6 (GNU/Linux)
>>> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
>>>
>>> iD8DBQFH6ZfK+gerLs4ltQ4RAgdjAJ9bwmIjAbqkG1YKUyrgbKSG47FlXgCdHW+P
>>> GzL6mjcA1K8t9Q/5Y75tfF4=
>>> =mySN
>>> -----END PGP SIGNATURE-----
>>>
>>>
>>> _______________________________________________
>>> Zope maillist - Zope at zope.org <mailto:Zope at zope.org>
>>> http://mail.zope.org/mailman/listinfo/zope
>>> ** No cross posts or HTML encoding! **
>>> (Related lists -
>>> http://mail.zope.org/mailman/listinfo/zope-announce
>>> http://mail.zope.org/mailman/listinfo/zope-dev )
>>>
>>>
>>>
>>>
>>> --
>>> Mis Cosas
>>> http://blogs.sistes.net/Garito
>>> Zope Smart Manager
>>> http://blogs.sistes.net/Garito/670
>>> ------------------------------------------------------------------------
>>>
>>> _______________________________________________
>>> Zope maillist - Zope at zope.org <mailto:Zope at zope.org>
>>>
>>> http://mail.zope.org/mailman/listinfo/zope
>>> ** No cross posts or HTML encoding! **
>>> (Related lists -
>>>
>>> http://mail.zope.org/mailman/listinfo/zope-announce
>>> http://mail.zope.org/mailman/listinfo/zope-dev )
>>>
>>>
>>
>>
>> --
>> Martijn Jacobs
>> Four Digits, Internet Solutions
>>
>> a: Willemsplein 15-1 6811 KB Arnhem NL
>> kvk: 091621370000 | btw: 8161.22.234.B01
>> e-mail: martijn at fourdigits.nl <mailto:martijn at fourdigits.nl> | web: http://www.fourdigits.nl
>>
>> tel: +31 (0)26 44 22 700 | fax: +31 (0)84 22 06 117
>>
>>
>> _______________________________________________
>> Zope maillist - Zope at zope.org <mailto:Zope at zope.org>
>> http://mail.zope.org/mailman/listinfo/zope
>> ** No cross posts or HTML encoding! **
>> (Related lists -
>> http://mail.zope.org/mailman/listinfo/zope-announce
>> http://mail.zope.org/mailman/listinfo/zope-dev )
>>
>>
>
>
> --
> Martijn Jacobs
> Four Digits, Internet Solutions
>
> a: Willemsplein 15-1 6811 KB Arnhem NL
> kvk: 091621370000 | btw: 8161.22.234.B01
> e-mail: martijn at fourdigits.nl | web: http://www.fourdigits.nl
> tel: +31 (0)26 44 22 700 | fax: +31 (0)84 22 06 117
>
More information about the Zope
mailing list