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:
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