[Zope] is <dtml-unless someIndirectVariable> possible ?
Rik Hoekstra
rik.hoekstra@inghist.nl
Sun, 27 Aug 2000 11:49:13 +0200
I have a lot of REQUEST like this one to check, depending on what
documents are in the folder.
<dtml-unless SOMEREQ>
<dtml-call "REQUEST.set('SOMEREQ','defaultvalue')">
</dtml-unless>
RH: this should work. It works with me
so i gave all documents concerned 2 properties
myPropName,myPropValue
(in our example
myPropName : SOMEREQ
myPropValue : defaultvalue)
So i'm able to iterate the documents and check the properties and
set the REQUEST.
<dtml-in "objectValues(['DTML Document'])">
<dtml-if "_.hasattr(this(), 'myPropName') == 1">
<dtml-call "REQUEST.set(myPropName,myPropValue)">
</dtml-if>
</dtml-in>
this works OK.
But, I can't find a way to generate the
<dtml-unless SOMEREQ> tag.
Passing the value of myPropName seems to fail (erreur while
parsing the syntax, or check the 'myPropName' instead of his
value).
I tried a lot of things and syntax around <dtml-unless
myPropName>, but it failed.
RH: Um, as you describe it, you mix up the name of the property and its
value (but that might be a matter of desciption). Try something like the
following
<dtml-unless "myPropName==SOMEREQ">
<dtml-call "REQUEST.set('myPropName', defaultvalue)">
</dtml-unless>
note that 1) this will only work if there is a myPropName and a defaultvalue
variable in the namespace and 2) this won't change the value of the property
hth
Rik