Provided by: libmojolicious-perl_4.63+dfsg-1_all
NAME
Mojolicious::Routes::Match - Find routes
SYNOPSIS
use Mojolicious::Controller; use Mojolicious::Routes; use Mojolicious::Routes::Match; # Routes my $r = Mojolicious::Routes->new; $r->get('/:controller/:action'); $r->put('/:controller/:action'); # Match my $c = Mojolicious::Controller->new; my $match = Mojolicious::Routes::Match->new(root => $r); $match->match($c => {method => 'PUT', path => '/foo/bar'}); say $match->stack->[0]{controller}; say $match->stack->[0]{action}; # Render say $match->path_for; say $match->path_for(action => 'baz');
DESCRIPTION
Mojolicious::Routes::Match finds routes in Mojolicious::Routes structures.
ATTRIBUTES
Mojolicious::Routes::Match implements the following attributes. current my $current = $match->current; $match = $match->current(2); Current position on the "stack", defaults to 0. endpoint my $endpoint = $match->endpoint; $match = $match->endpoint(Mojolicious::Routes::Route->new); The route endpoint that matched, usually a Mojolicious::Routes::Route objects. root my $root = $match->root; $match = $match->root(Mojolicious::Routes->new); The root of the route structure, usually a Mojolicious::Routes object. stack my $stack = $match->stack; $match = $match->stack([{foo => 'bar'}]); Captured parameters with nesting history.
METHODS
Mojolicious::Routes::Match inherits all methods from Mojo::Base and implements the following new ones. match $match->match(Mojolicious::Controller->new, {method => 'GET', path => '/'}); Match controller and options against "root" to find appropriate "endpoint". path_for my $path = $match->path_for; my $path = $match->path_for(foo => 'bar'); my $path = $match->path_for({foo => 'bar'}); my $path = $match->path_for('named'); my $path = $match->path_for('named', foo => 'bar'); my $path = $match->path_for('named', {foo => 'bar'}); my ($path, $ws) = $match->path_for; my ($path, $ws) = $match->path_for(foo => 'bar'); my ($path, $ws) = $match->path_for({foo => 'bar'}); my ($path, $ws) = $match->path_for('named'); my ($path, $ws) = $match->path_for('named', foo => 'bar'); my ($path, $ws) = $match->path_for('named', {foo => 'bar'}); Render matching route with parameters into path.
SEE ALSO
Mojolicious, Mojolicious::Guides, <http://mojolicio.us>.