prefix + uri_for - not working
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
participants (1)
-
Assaf Gordon