Ugh... Assume that the view gets everything from controller. Then this controller is the thing that should gather everything together before shipping it to the view. Let the template decide the form, let the controller decide the content.

That's fair enough, but say you've got 20 possible page elements of which typically 5 or 6 are included in the final page. Would you still suggest that the Controller should initialize any data for all 20 elements onto the stash?

What if some of those elements are relatively expensive to generate?

What Steve wants is some way of being able to decide in the View which of those elements are included and load them accordingly.

The best solution I can come up with is passing coderefs into your view which can then be run to retrieve the data would something like this work?

$c->stash->{'get_most_popular'} = sub {
 return $c->model('DB')->some_expensive_db_op();
};


Carl


_______________________________________________
List: [email protected]
Listinfo: http://lists.rawmode.org/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/[email protected]/
Dev site: http://dev.catalyst.perl.org/

Reply via email to