How to do queries for 'nested :partial' structures ?

Hi there,

what's the most resource friendly way to program the following?

In the VIEW, I need to show a 'nested :has_many' structure like this:

Hi there,

what's the most resource friendly way to program the following?

In the VIEW, I need to show a 'nested :has_many' structure like this:

============= Author1 BookA ...    ChapterX    ...      Page-i      ... BookB ...    ChapterX    ...      Page-i      ... Author2 ...

I assume this means that: - Author, Book, Chapter, Page must be "collections" (@authors, @books, @chapters, @pages) - I need to have a :partial for each collection - Each :partial contains the next :partial (nested parent-child structure)

My question: - Doing (for example) the query for @books directly within the 'author' :partial (and so on) would be stupid, wouldn't it... - So how do I need to write the database queries in the controller (in the most efficient way) for such a case?

@authors = Author.find(:all, :include => { :books => { :chapters => :pages }})

Of course, that's going to instantiate all the authors, books, chapters, and pages into objects in your program...

- How would this look like in the view (how to access the values)? (for example in any child :partial)

Thank you very much for your help! Tom --

In your main view,

<%= render :partial => 'author', :collection => @authors %>

In the _author.html.erb

<%= render :partial => 'book', :collection => author.books %>

etc.

-Rob

Rob Biedenharn http://agileconsultingllc.com Rob@AgileConsultingLLC.com