[Zope] DTML Method not working

Phil Harris phil.harris@zope.co.uk
Sat, 7 Oct 2000 22:52:59 +0100


Oops:

That should be:

<dtml-with expr="REQUEST.resolve_url(BASE0+'/')">
<ul>
<dtml-in expr="objectValues('Folder')">
 <li><a href="&dtml-absolute_url;"><dtml-var title_or_id></a><br></li>
</dtml-in>
</ul>
</dtml-with>

hth

Phil
phil.harris@zweb.co.uk


----- Original Message -----
From: "Phil Harris" <phil.harris@zope.co.uk>
To: "Ronald L. Chichester" <complaw@hal-pc.org>; <zope@zope.org>
Sent: Saturday, October 07, 2000 9:38 PM
Subject: Re: [Zope] DTML Method not working


> Is the code you used in a DTML Method or a DTML Document?
>
> Is it in a DTML Method being called from a DTML Document?
>
> If the answer to either of these is 'yes' then it's doing as you ask!
>
> The thing that gets most new zope users is that a DTML Document is itself
a
> container.  This means that anytime you use code similar to yours or when
> using a <dtml-tree ...> it will probably return a blank, as the DTML
> Dopcument has no children(?!?).
>
> Solutions:
>
> 1.    Try moving the code into a DTML Method.
> 2.    Use a dtml-with around it.
>
> The second one works most places but if in the root then it's slightly
more
> difficult as the top object is hard to reference (please someone tell me
I'm
> wrong here).
>
> You could try something like:
>
> <dtml-with expr="resolve_url(BASE0+'/')">
> <ul>
> <dtml-in expr="objectValues('Folder')">
>  <li><a href="&dtml-absolute_url;"><dtml-var title_or_id></a><br></li>
> </dtml-in>
> </ul>
> </dtml-with>
>
> The resolve_url(BASE0+'/') should give you a reference to the top Zope
> object (root).
>
> hth
>
> Phil
> phil.harris@zweb.co.uk
>
> ----- Original Message -----
> From: "Ronald L. Chichester" <complaw@hal-pc.org>
> To: <zope@zope.org>
> Sent: Sunday, October 08, 2000 8:58 PM
> Subject: [Zope] DTML Method not working
>
>
> > I took some code that was in the (work-in-progress) O'Riley book on
> > Zope.  In that example, then had a DTML Method used for identifying
> > folders and hyperlinking to them.  The code is as follows:
> >
> > <ul>
> > <dtml-in expr="objectValues('Folder')">
> >  <li><a href="&dtml-absolute_url;"><dtml-var title_or_id></a><br></li>
> > </dtml-in>
> > </ul>
> >
> > The problem is, it doesn't work.  I know the method is being invoked
> > because there is some other text that is indeed being inserted.
> > Moreover, there are sub-folders in the folder that calls the method.
> >
> > Does anyone know what the problem is?  Is it a permission issue.  The
> > standard_html_header and _footer, show up just fine, along with logos
> > and such.  The only part that isn't showing up is the stuff that was
> > supposed to be generated by the <dtml-in> block.
> >
> > Any hints?
> >
> > Thanks in advance.
> >
> > Ron
> >  ./.
> >
> >
> > _______________________________________________
> > Zope maillist  -  Zope@zope.org
> > 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 )
>
>
> _______________________________________________
> Zope maillist  -  Zope@zope.org
> 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 )