[Zope] Tarversal Issue

Holger Hoffmann hohoff@rz.uni-potsdam.de
Tue, 27 Nov 2001 13:16:16 +0100


Hi Falk,

Stadtverwaltung Schwarzenberg wrote:
> 
> Hi there...
> 
> I got a little Problem with Zope (d'uh - what else would I wite this mail
> for ;-) ). I am trying to create a new website on an already existing Zope
> Server which alread hosts another site. So I created a new Folder (let's
> call it "bar") on the root Folder of this other server added a SiteRoot
> Objcet, etc....
> 
> Now there is one Problem: this old server defines a property "foo" in its
> root Folder. By accident I use the same name for an HTML form value. So what
> happens is that every time I submit this form my REQUEST.form['foo'] is
> overwritten  by the other servers root folder "foo" property because Zope
> first traverses the ZODB and only then scans the REQUEST object. So if I
> write <dtml-var foo missing=""> I get the value of root.foo instead of
> REQUEST.form['foo'].
> 
> Now it would be easy to rename my foo attribute but I used it in quite a lot
> of places, so I this would mean a lot of work. But what I thought about is,
> if it is possible to somehow tell zope to stop traversal once it reached my
> the "bar" folder, one level beforereching the root folder. Is there any way
> to achieve this?

I don't know, but you could push the REQUEST and only the REQUEST onto
the namespace stack:

<dtml-with REQUEST only>
<dtml-var foo missing="">
</dtml-with>

... Holger

-- 

I'm feeling very surreal today... or am I ?