RE: [Zope] How to list objects across different containers in Zop e's tree?
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
Thank you again James. I'll test your code. I thought there was a simpler way to list objects across containers. Something that could list objects within the same level (starting from the root), as if each folder at the root was a column, and its subfolders elements of a raw. Ausum James Sintz wrote:
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
_______________________________________________ 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 )
participants (2)
-
Ausum -
James Sintz