> In most cases the Handler is set to "view", in which case View.pm > instantiates other modules objects, (and those instantiations use other > url string data to determine what to construct into the object). View > then just spits out the default head, body (created with the other > objects) and footer. > > All of the "real" work is done by the other modules. View.pm could care > less what comes back from $html_obj->view_data. It just adds the result > to $body. It's the html module's job to fill the return from view_data > with the correct information.
It sounds like you have a system that works well for you, and that's what really matters. I would probably try to get this default HTML that View.pm puts out into the same place the rest of your HTML is created, especially since it seems like View.pm is responsible for interpreting request data and calling methods on model objects. (View.pm is maybe a somewhat misleading name, since it isn't the part that generates the HTML "view".) - Perrin