【问题标题】:beginner problems with mojolicious about "=>"mojolicious 关于“=>”的初学者问题
【发布时间】:2018-01-08 02:53:16
【问题描述】:

MojoExample 的mojolite 脚本中,有以下几行,我想知道“blogstagtags => tags => 'personal'”中的“=>”是什么意思。我认为“=>”是哈希键和值之间的分隔符。我可以在任何地方找到解释吗?

get '/blogs' => sub {
    shift->redirect_to(blogstagtags => tags => 'personal'); # Where is blogstagtags defined? #yaohe
    # blogstagtags is the route name for 'blogs/tag/(*tags)' by default #yaohe
};

get '/blogs/tag/(*tags)' => sub {
    my $self = shift;
    # Specified tags to search for: /tag/one/tag/two/tag/three
    my @tags = grep $_ ne 'tag' => split '/' => $self->param('tags');

    my @blogs = $self->db->resultset('Blog')->by_tags(@tags) or return $self->redirect_to('blogs');

    $self->render('blogs/index', blogs => [@blogs],);
};

【问题讨论】:

    标签: mojolicious


    【解决方案1】:
    blogstagtags => tags => 'personal' 
    

    相同
    blogstagtags => (tags=>'personal')
    

    现在我可以自己回答这个问题了。这是一个 Perl 语法问题,而不是 mojolicious。哈希 (tags=>'personal') 被传递给参数 'blogstagtags'。

    【讨论】:

      【解决方案2】:

      那个操作符只是“语法糖” 基本上就像逗号, 一样工作,希望在左侧允许使用“裸词”

      https://stackoverflow.com/a/4093914/1681985

      【讨论】:

        猜你喜欢
        • 2013-12-20
        • 2011-01-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-05-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多