[Zope] How to list objects across different containers in Zop e's tree?

James Sintz jsintz@ohiohistory.org
Wed, 17 Jan 2001 17:12:21 -0500


Right off the top of my head, since the sections are folder objects you
could simply dtml-in through the folders and then inbed another dtml-in.

Example (nothing fancy). 

I did not include any date range stuff, but you can probably figure that out
on your own. It may be better to include a 'section' property in your zClass
and then just search your Catalog (see catalog example below for an UNTESTED
example).

<dtml-in "objectValues(['Folder'])">
  <dtml-var name_or_id><br>
  <!-- now use the folder id to move into the correct namespace -->
   <dtml-with id>
     <!-- news stories here -->
       <dtml-in "objectValues(['newItems'])">
           <dtml-var headline><br>
           <dtml-var summary><br>
       </dtml-in>
         <br>
   </dtml-with>
   <br>
</dtml-in>

Catalog example

<dtml-in "objectValues(['Folder'])">
  <dtml-var name_or_id><br>

   <dtml-in "Catalog( { 'meta_type' : 'newsItem', 
                                'section' :  id,
                                'goLiveDate' : [ 2000/27/12 , 2001/05/01], 
                                'goLiveDate_usage' : 'range:min:max' } )"> 
           <dtml-var headline><br>
           <dtml-var summary><br>
  </dtml-in> 
   <br>
</dtml-in>


> -----Original Message-----
> From:	Ausum [SMTP:ausum@mail.cosapidata.com.pe]
> Sent:	Wednesday, January 17, 2001 3:18 PM
> To:	James Sintz; zope@zope.org
> Subject:	Re: [Zope] How to list objects across different containers
> in Zope's  tree?
> 
> Thanks for the tip, James. It seems a clever approach although I must
> keep it for the time being.
> Anyway if that were the case, the question could be this one:
> 
> How can I list all the headlines and summaries for all the news appeared
> for sports, locals and politics sections (in example) from December
> 27th,2000 and January 5th, 2001 ?
> 
> Greetings,
> 
> 
> Ausum
> 
>  
> 
> James Sintz wrote:
> > 
> > Ausum,
> > 
> > It may be time to re-think your site structure. I have a news type site
> as
> > well and here is how I handle it (my way... not saying it is by any
> means
> > the best or right way).
> > 
> > Instead of storing your news items in a series of folderish objects,
> maybe
> > create folders for each section and then create a news item ZClass with
> the
> > article date or goLiveDate as the ID.
> > 
> > zopesite:8080/sports/2000.10.17/newsobjectid_htm
> > 
> > Then do some dtml to pull out the ones you want on the main
> > "sport/thislist_htm" page.
> > Better yet use ZCatalog to search for the range of news items you want
> to
> > appear in the list.
> > 
> > Hope this helps!!
> > 
> > Jamey Sintz
> > 
> >