The docs are much better than they used to be but they still
require too much caffeine to absorb. Chained Examples.
package MyApp::Controller::App::Reporting;
use Moose;
use namespace::autoclean;
BEGIN { extends "Catalyst::Controller" }
sub by_id :Chained("/") :PathPart("reporting") :CaptureArgs(1) {
my( $self, $c, $id ) = @_;
$c->stash( ohaid => $id );
}
sub reporting :Chained("by_id") PathPart("") Args(0) {
my( $self, $c ) = @_;
$c->response->body("OHAI " . $c->stash->{ohaid});
}
__PACKAGE__->meta->make_immutable;
__END__
[debug] Loaded Chained actions:
.-------------------------------------+-------------------------------
+-------.
| Path Spec | Private
+ |
+-------------------------------------+-------------------------------
+-------+
| /reporting/* | /app/reporting/by_id (1)
+ |
| | => /app/reporting/reporting
+ |
'-------------------------------------+-------------------------------
+-------'
moo@cow[1148]~>curl http://localhost:3000/reporting/DER
OHAI DER