because you could have multiple views... your controller determines (or should be) what views are to be loaded.

considering a practical example... I'm re-writing my website using the MVC model provided by CodeIgniter. Each single page consists of multiple views: Header, QuickLinks, a sub-header, content, side bar navigation, and a footer. The header and footer never change... they are fairly static, but I made them their own views so that if I need to, I can customize each one per controller.

So now my controller has let's say three potential views (in reality it's 8, but for simplicity, I'll address 3)... 1) The default view 2) recent news (which can be linked from the Quick Links and the SideNavigation) and 3) Featured (which is only linked from the side bar).

Each view is a PART of the whole web page... and cannot stand on it's own (well, it could, but it wouldn't look right). One of the advantages of having the controller is that you can load multiple views. I've done this so that I have ONE header... if I change my _header_view file... then it updates the whole site.

Each one of the methods in my controller does the same action:
1) Header
2) Quicklinks
3) Content - default content; recent news content; featured content
4) Sidebar nav
5) Footer

I've got it setup in the controller so that the name of the requested view is also passed to QuickLinks and the SideBarNave views... that allows me to turn off selected links (specifically the ones that point to the page the visitor is actually on). Featured is only in the SidebarNav... while Recent News is in both the QuickLinks and SidebarNav views.

This gives me an advantage that I could simply change one file in the SideBarNav and it replicates through the whole site... same for each of the views... now all I need to maintain is just the different content views...

I guess it's a long way of saying that a controller could potentially server up more than one view.

Is this helping any?

-tg