sub _filter_component {
my ( $c, $comp, @args ) = @_;
- if ( eval { $comp->can('ACCEPT_CONTEXT'); } ) {
+ if ( Scalar::Util::blessed($c) && eval { $comp->can('ACCEPT_CONTEXT'); } ) {
return $comp->ACCEPT_CONTEXT( $c, @args );
}
C<@args> is an arrayref it is treated as a list of captures to be passed
to C<uri_for_action>.
+You can maintain the arguments captured by an action (e.g.: Regex, Chained)
+using C<< $c->req->captures >>.
+
+ # For the current action
+ $c->uri_for($c->action, $c->req->captures);
+
+ # For the Foo action in the Bar controller
+ $c->uri_for($c->controller->('Bar')->action_for('Foo'), $c->req->captures);
+
=cut
sub uri_for {
Geoff Richards
+ilmari: Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>
+
jcamacho: Juan Camacho
Jody Belka
phaylon: Robert Sedlacek <phaylon@dunkelheit.at>
+rafl: Florian Ragwitz <rafl@debian.org>
+
sky: Arthur Bergman
the_jester: Jesse Sheidlower