Tom Deprez writes:
 > Assume following :
 > 
 > Folder1
 >   sql
 >   show_abc
 >   method_showdata
 >   Folder2
 >     show_abc
 > 
 > method_showdata has among it the following code :
 > 
 > <dtml-with sql>
 >   <dtml-in selectallcentres>
 >     <table><tr><td>
 >        <dtml-var show_abc>
 >     </td></tr></table>
 >   </dtml-in>
 > </dtml-with>
 > 
 > 1) When you call this function from Folder1 : show_abc of folder1 is used
 > 
 > 2) When you call this function from Folder2 : show_abc of folder1 is used
 > 
 > --> what you wouldn't expect?
This *IS* normal acquisition behaviour.

I use the following rule of thumb:

  When Zope looks up a name "n" for object "o" in context "c",
  then Zope lools for "n" in "o". If this fails, Zope
  walks up from "o" towards the root in search for "n".
  Only, if it does not find "n" on this route, it looks
  in the context "c" for "n".

In your case, the object is "sql" and the name is "show_abc".
The context is "Folder1" in the first and "Folder2" in the
second case. But "show_abc" is found in both cases in
the parent of "sql" -- without looking at the context.


Dieter

_______________________________________________
Zope maillist  -  [EMAIL PROTECTED]
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 )

Reply via email to