On 25 Jul 2008, at 13:40, James S. White wrote:

I was trying to munge the paramaters in the controller, I just can't figure out how to access the variables of a controller method in the template. I'd be more than happy to pass the argument to a controller, and then have the view fetch it from the controller, and then the template read it from the view, If I had any idea how to dereference the variables in order to set them in new components. I was just trying to keep it walk before running and I keep
tripping over my feet.


You want to put the data into the 'stash'.

So in your controller you have:
my ( $self, $c, $arg ) = @_;
$arg =~ s/stuff/munge/;
$c->stash->{somearg} = $arg;

And in your view, you say: [% c.stash.somearg %]

You don't really want the view to be able to see the controller's internal state / mechanics, and so you have to explicitly stash any data which you want to be able to see from the view.

HTH
t0m


_______________________________________________
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/

Reply via email to