Jan Henning Thorsen > Mojolicious-Plugin-UrlWith > Mojolicious::Plugin::UrlWith

Download:
Mojolicious-Plugin-UrlWith-0.0502.tar.gz

Dependencies

Annotate this POD

Website

View/Report Bugs
Source  

NAME ^

Mojolicious::Plugin::UrlWith - Preserve parts of the url

VERSION ^

0.0502

DESCRIPTION ^

This helper provides the same method as "url_for" in Mojolicious::Controller with the difference that it keeps the query string.

SYNOPSIS ^

    package MyApp;
    sub startup {
        my $self = shift;

        $self->plugin('Mojolicious::Plugin::UrlWith' => {
            parse_fragment => 1,
            current_page_class => 'current-page',
        });

        # ...
    }

ATTRIBUTES ^

parse_fragment

Will remove the '#fragment' part from the first arugment to "url_with", and use it use it for "fragment" in Mojo::URL.

current_page_class

    $self->current_page_class($classname);
    $classname = $self->current_page_class;

Will add the $classname to the link in "link_with" if the path part of the link match the currently requested path. You need to set this attribute when registering the plugin, since the default value is empty string, cancelling the behavior.

This attribute is EXPERIMENTAL and may be removed/changed without warning.

HELPERS ^

url_with

The examples below has this current request url: http://somedomain.com/search?page=1.

$controller->url_with({ name => 'bob' });

Will result in http://somedomain.com/search?page=1&name=bob.

$controller->url_with({ page => undef });

Will result in http://somedomain.com/search.

$controller->url_with('named', { age => 42 });

Will result in http://somedomain.com/some/named/route?page=1&age=42.

$controller->url_with('/path', { random => 24 });

Will result in http://somedomain.com/path?page=1&random=24.

$controller->url_with('/path', [ c => 313 ]);

Will result in http://somedomain.com/path?c=313.

Summary: A hash-ref will be merged with existing query params, while an array-ref will create a new set of query params.

link_with

Same as "link_to" in Mojolicious::Plugin::TagHelpers, but use "url_with" instead of "url_to" in Mojolicious::Controller to construct the hyper reference.

METHODS ^

register

Will register the methods under "HELPERS".

COPYRIGHT & LICENSE ^

This library is free software. You can redistribute it and/or modify it under the same terms as Perl itself.

AUTHOR ^

Jan Henning Thorsen

syntax highlighting: