-----Original Message----- From: Martijn Pieters [mailto:mj@digicool.com] Sent: Friday, January 21, 2000 8:09 PM To: Chris McDonough; Jay, Dylan Cc: 'zope@zope.org' Subject: RE: [Zope] How to I use aquisition in an external method?
-----Original Message----- From: Chris McDonough [mailto:chrism@digicool.com]
Dylan,
I usually pass "this()" in to an external method to get a handle on acquisition from an external method.
e.g.:
<dtml-call "emMyExternalMethod(this())">
def myExternalMethod(context): if context.folder.attribute: do something else: do something else
this() generally refers to the folder containing the dtml method. in the external method, you can use acquisition through this object.
"Jay, Dylan" wrote:
I want to find out if a callable object exists from a
folder object using
acquisition. ie if I call folder.method() it will be guaranteed to work.
If your external method signature has 'self' as the first parameter, the current object (be it the Folder or DTML Document or some such), will be passed in with that parameter.
So:
def MyExternalAttribute(self) return self.acquired_folder.attribute
I guess I didn't really make myself clear. I want to be able to tell whether a method exists or not. Specifically a method of a certain name that can exist somewhere in the aquisition path.