Ah, lol.. No. Sorry... I must not be making much sense. I wont explain everything because it would really sound strange. Long story short, I have a list which is basically the location of a document (folder, folder2, index_html = folder1.folder.index_html).
From a method called from the root of the site: /index_html
I want to basically do the same as this code: <dtml-with folder 1> <dtml-var index_html> <dtml-with folder2> <dtml-var index_html> </dtml-with> </dtml-with> But instead using the list. The reason is that every folder may or may not have an index_html, and any directory that DOES have one in the traversal path from root to the end of the list (folder1 to folder2.index_html (3 steps)) will be rendered into the document. So I would get something like: <!-- this is from /folder1/index_html !--/> <h1>Folder 1</h1> <!-- this is from /folder1/folder2/index_html !--/> <h1>Folder2</h1> The trick is that I am currently in the root namespace. I tried ascending the tree with the code I pasted earlier, but it seems to just query all iterations from root, and of course this doesn't work. Did I explain any clearer or worse? Thanks, Paz -----Original Message----- From: Max M [mailto:maxm@mxm.dk] Sent: Thursday, June 13, 2002 10:44 AM To: Paul Zwarts Cc: zope@zope.org Subject: Re: [Zope] nested dtml-with Paul Zwarts wrote:
I tried your code out, but subTree('Folder') returns an attribute error and I cant find anything under 'subTree' search anywhere on zope.org.. Are you sure that's what it is?
You need to define a Python script called subTree ... see my code example.
I'd like to be able to call a document from the root of my site based on a list stored in a Session.
You are either talking nonsense, skipping several lines of thought, or I havn't understood a bit! Was your problem not that you wanted to get a list of all objects and subobjects in a folderish object? regards Max M
From: Max M [mailto:maxm@mxm.dk] Sent: Thursday, June 13, 2002 8:33 AM To: Paul Zwarts Cc: zope@zope.org Subject: Re: [Zope] nested dtml-with
Don't do recursion in dtml. It's a cardinal sin, and it will make your head explode.
Do it in a Python script instead.
untested::
def subTree(context, type=None): """ Returns the entire sub-branch below this recursively as a flat list """ children = context.objectValues(type) grandChildren = [] for child in children: grandChildren += child.subTree(type) return children + grandChildren
regards Max M
-- "Sorry I would Really Like To Help More On This Project, But Am To Busy Doing Paid Work On A Tight Deadline" Max M