[Zope] Re: Question about dot in method name

Martijn Jacobs martijn at fourdigits.nl
Wed Mar 26 10:22:14 EDT 2008


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 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.zope.org/pipermail/zope/attachments/20080326/b65a08ee/attachment-0001.htm


More information about the Zope mailing list