[Zope] Question regarding acquisition behaviour.

Dylan Reinhardt zope at dylanreinhardt.com
Tue Nov 25 12:26:46 EST 2003


On Tue, 2003-11-25 at 08:51, Alec Munro wrote:
> Hi List,
> 
> It is my understanding that while acquisition will traverse up the 
> directory tree, it will only do so until it finds a match, and then it 
> will restart from that directory.

Sort of.  It works fist by containment (physical path) then by context
(how things are arranged in the URL).  If it finds a match by
containment, it won't look at context.


> So if I'm in script 'someScript' looking for 'container.HTML.pageX' and 
> my hierarchy looks something like this:
> 
> someSite
> -HTML
> --pageX
> -subSite1
> --about
> ---HTML
> ----pageA
> ----pageX
> --contact
> ---HTML
> ----pageA
> 
> if someScript is in 'someSite/subSite1/about' then I will get the 
> result: 'someSite/subSite1/about/HTML/pageX'
> But if someScript is in 'someSite/subSite1/contact' I won't get 
> anything. 

That seems correct.

> It will find the HTML folder

The one *in* someSite/subSite1/contact

> , and give up when there's no 
> 'pageX'

There isn't one... not that can be found from the folders you're in
and/or have acquired.


> . What I would like is the result: '/someSite/HTML/pageX'

Then you should ask for that result.  Try this:

.../container/someSite/HTML/pageX

A better answer, long-term is not to re-use folder names so liberally. 
The more unique they are, the easier it will be to know whether
acquisition is working and why it isn't when it's not.

HTH,

Dylan




More information about the Zope mailing list