[Catalyst-dev] View Questions

David E. Wheeler david at kineticode.com
Fri Oct 30 05:34:50 GMT 2009


I'm working on a new view for Template::Declare, after taking the time  
to really understand [how it works][]. I've based the code on the  
functionality of Catalyst::View::TT, in order to have full feature  
parity. But I have a couple of questions about how things are  
structured and would appreciate feedback.

First, I noticed that `render()` in View::TT and View::Mason does not  
throw an exception on failure, but returns an exception object instead  
of the content. This is…bizarre. Is there any reason not to change  
things so that `render()` only returns content and throws an exception  
on failure? If not, I'll patch TT and Mason and make it so in  
View::TD, as well.

And second, I notice that View::TT adds TT variables for $c, $c->req- 
 >base, and $c->config->{name}. Right now I just have a `config()`  
method (and an alias, `c()`). How important is it that there also be  
`base()` and `name()` methods to correspond  to TT's variables?



[how it works]: http://justatheory.com/computers/programming/perl/modules/template-declare-documented.html

More information about the Catalyst-dev mailing list