Hi,
I'm using uri_for()/uri_base() in my code, and I've noticed sadly that they
ignore the "prefix" settings.
While changing this in Dancer1 will wreak havoc :), perhaps this can be
improved in Dancer2 ?
Simple Example:
======
package uri_for_test;
use Dancer ':syntax';
our $VERSION = '0.1';
get '/' => sub {
my $url_base = request->uri_base;
my $url = request->uri_for("/verify");
print STDERR "URL = $url\n";
print STDERR "URL-BASE = $url_base\n";
template 'index';
};
true;
======
Running it (with ./bin/app.pl) prints (as expected):
======
>> Dancer 1.3090 server 28846 listening on http://0.0.0.0:3000
== Entering the development dance floor ...
URL-BASE = http://localhost:3000
URL = http://localhost:3000/verify
======
Then, adding just the "prefix" statement before the "get":
===
prefix "/foo" ;
===
Makes the application respond to "http://localhost:3000/foo", but the printed
output is still:
===
URL-BASE = http://localhost:3000
URL = http://localhost:3000/verify
===
Whereas I would expect it to be:
===
URL-BASE = http://localhost:3000/foo
URL = http://localhost:3000/foo/verify
===
This makes the "prefix" statement only partially useful, because changing
prefix of an entire application/module still requires manually changing all the
"uri_for/uri_base" calls.
Regards,
-gordon
_______________________________________________
Dancer-users mailing list
[email protected]
http://www.backup-manager.org/cgi-bin/listinfo/dancer-users