[Dancer-users] Bug in `forward`?

Nick Knutov mail at knutov.com
Fri Apr 15 17:22:01 CEST 2011


$ dancer -v
Dancer 1.3030

dancer -a test2

$ cat ./lib/test2.pm
============
package test2;
use Dancer ':syntax';

use Data::Dumper;

any '/ticket/:tid/set' => sub {
	my $tid = params->{tid};
	return Dumper(params->{assign});
};

get '/ticket/:tid/assign' => sub {
	my $tid = params->{tid};
	return forward "/ticket/$tid/set?assign=1";
};

true;
============

http://localhost:3001/ticket/123/set?assign=123 - is ok
http://localhost:3001/ticket/123/set - also ok
http://localhost:3001/ticket/123/assign - not ok

plackup -E development -p 3001 -r -R ./lib -a ./bin/app.pl
if it does matter.

On 15.04.2011 18:59, ambs wrote:
>
> Hello, Maxim
>
> It seems it is my error. I didn't know that. Getting back to the
> original bug, by Nick.
>
>
>>>>> On 15/04/2011 02:19, Nick Knutov wrote:
>>>>>> return forward "/ticket/$tid/set?assign=1";
>>>>>>
>>>>>> Not an ARRAY reference at
>>>>>> /usr/local/share/perl/5.10.1/Dancer/Route.pm
>>>>>> line 167.
>
> Can you prepare a small case where this happens so it gets easier to debug?
>
> Meanwhile, I'll try to find out if using that line I can understand
> where a non-array value can be constructed.
>
> Thanks
> Alberto

-- 
Best Regards,
Nick Knutov
http://knutov.com
ICQ: 272873706
Voice: +7-904-84-23-130


More information about the Dancer-users mailing list