在 Mojolicious 应用程序中,我的控制器代码中有一条路由,如下所示:
/account/:id/users
当我到达链的用户部分时,路由的 /account/:id 部分包含以下数据:
$VAR1 = {
'signup_ip' => '172.17.5.146',
'z_id' => '382C58D8-529E-11E1-BDFB-A44585CCC763',
'signup_date' => '2012-03-12T12:11:10Z',
'name' => 'Some Cool Account Name',
'users' => [
{
'user_id' => '382C67EC-529E-11E1-BDFB-A44585CCC763'
}
],
'account_id' => '382C67EC-529E-11E1-BDFB-A44585CCC763',
};
在链的用户部分,我使用 $self->tx->res->content->get_body_chunk(0) 获得上述哈希
sub users {
my $self = shift;
my $user_list = from_json( $self->tx->res->content->get_body_chunk(0) );
$self->respond_to( json => $user_list->{users} );
}
我遇到的问题是我想只用用户 arrayref 覆盖响应。上面 sub users(){} 中的代码没有这样做。也就是说,当我在测试中转储结果时,我仍然得到整个哈希。$user_list 是我在 users() 中寻找的数组引用,但我无法覆盖它。
任何人都知道如何做到这一点?