On 6/17/05, Jan-Ole Esleben <esleben@gmail.com> wrote:
No, I'm sorry; I only get system paths.
And what about REQUEST.PARENTS? (or is that just the http request)
Ole
2005/6/17, Peter Bengtsson <peterbe@gmail.com>:
On 6/17/05, Jan-Ole Esleben <esleben@gmail.com> wrote:
Unforunately, this just gives me the pythonic path to the method; what I need for a TALES expression is the ZOPE path - i.e. what I get from the stack frame is ... E:\zope\Extensions\req.py ... but what I need is ... http://localhost:8080/ReqTest ...
Ok, maybe inspect.stack()[1] was the wrong one. Can't remember nor test it for you but try any of the others in that list. Eg. inspect.stack()[0] or inspect.stack()[2]
You can maybe find something by going through REQUEST.PARENTS
Ole
2005/6/17, Peter Bengtsson <peterbe@gmail.com>:
Then, in your External method, try::
import inspect print inspect.stack()[1]
On 6/17/05, Jan-Ole Esleben <esleben@gmail.com> wrote:
I want to know the name (and path) of the _External Method_ from inside it. What I _can_ get is the name of the DTML method.
I want to build generic scaffolding code for functions that conditionally redispatch as asynchronous calls (via ZASync); that part, however, isn't a problem at all - everything works fine as long as I use an HTTP request directly and redispatch with information from the REQUEST. The problem is that I need a TALES expression to call the function again (asynchronously this time), and for that I need the ZOPE path to it.
Ole
2005/6/17, Peter Bengtsson <peterbe@gmail.com>:
> is there a generic way to find out from Python code which method has > been called (in other words: find out where the current method is > located in the ZOPE hierarchy and what its name is)? If I call an > External Method via a DTML method, of course the REQUEST object > contains the path to the DTML method because the External Method > hasn't been called via HTTP. I haven't been able to figure out any > other way of getting this information. > I don't get it. Do you want to know the name of the DTML method from inside the External method? Perhaps I'll be able to help if you tell us more about the intention of this code.
> Thanks in advance, > Ole > _______________________________________________ > Zope maillist - Zope@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 ) >
-- Peter Bengtsson, work www.fry-it.com home www.peterbe.com hobby www.issuetrackerproduct.com
_______________________________________________ Zope maillist - Zope@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 )
-- Peter Bengtsson, work www.fry-it.com home www.peterbe.com hobby www.issuetrackerproduct.com
_______________________________________________ Zope maillist - Zope@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 )
-- Peter Bengtsson, work www.fry-it.com home www.peterbe.com hobby www.issuetrackerproduct.com
_______________________________________________ Zope maillist - Zope@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 )
-- Peter Bengtsson, work www.fry-it.com home www.peterbe.com hobby www.issuetrackerproduct.com