2014-12-06 76 views
1

我试图让数组中param,一切都与单个数据效果很好,但不适用于阵列...如何获得Dancer2的多参数?

客户端(从浏览器发送的参数列表):

list[1] null 
list[2] 2 
list[3] 10 
list[4] null 

服务器端:

any ['get','post'] => '/save_list' => sub { 
    my $items = param ('list'); 
    #result = null, mb is only the first element 
    #my $items = param ('list[]'); 
    #result = null 
    #my @items = param ('list[]'); 
    #result = empty 
    #my @items = param ('list'); 
    #result = empty 
}; 

我在哪里错了?

我的版本Dancer2-0.155004

+0

什么是被调用的URL? – 2014-12-06 18:25:06

+0

https://www.stopbit.ru/uuppo点击“序列化” – Lex9sysT2 2014-12-06 18:29:47

+0

祝你好运...... – 2014-12-06 20:23:30

回答

1

DSL keyword parameters将返回Hash::MultiValue对象,您可以使用它来访问那些Dancer2。

any ['get','post'] => '/save_list' => sub { 
    my @items = parameters->get_all('list'); 
    foreach my $item (@items) { 
    do_stuff($item); 
    } 
}; 
+0

在阅读了github的问题之后,我看到你真的让他们实现这一点。做得好。我将这个答案留作参考,因为这个问题与类似的D1问题有关。 – simbabque 2015-08-26 08:32:37