Re: [Zope] URL traversal
use a python method with the magic traversal stuff turned on. :)
Andy Dustman wrote I'd like to be able to do something similar to the URL traversal that ZSQL methods do, but more something like this:
http://localhost/blah/a/b/c/spam
would invoke blah.spam(args=['a','b','c']), i.e. args is a variable-sized list of each path item between the object and the method in sequence order.
1) Is there a way to do this short of writing a Product?
2) Having already figured out the answer to #1 was probably "no", I have tried to write a Product that does the job. It used a helper class, similar to OFS.Folder.Traverse. My main problem (which I probably have to punt on) is that I'm trying to use __getattr__ hooks instead of __getitem__ hooks; I may need to switch to doing the latter to get things to work.
The test Product (in theory) is essentially a Folder with the above semantics, because I needed something I could stick DTML Methods and other things into. This might be useful in general, as well.
3) Is this even a reasonable thing to try to do? I have an existing CGI script that uses the PATH_INFO like this (mostly; it just takes everything past a certain point as arguments).
-- andy dustman | programmer/analyst | comstar.net, inc. telephone: 770.485.6025 / 706.549.7689 | icq: 32922760 | pgp: 0xc72f3f1d "Therefore, sweet knights, if you may doubt your strength or courage, come no further, for death awaits you all, with nasty, big, pointy teeth!"
_______________________________________________ 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 )
-- Anthony Baxter <anthony@interlink.com.au> It's never too late to have a happy childhood.
participants (1)
-
Anthony Baxter