【问题标题】:How can I forward a public path to another Catalyst controller?如何将公共路径转发到另一个 Catalyst 控制器?
【发布时间】:2010-01-03 11:13:06
【问题描述】:

假设公共 URL /faq 链接到我的 Catalyst 应用程序中的私有路径 /faq/index:

package MyApp::Controller:FAQ;
sub index :Path {
[....]

如何从另一个控制器转发到 /faq,即我如何知道 URL /faq 的操作是 /faq/index ?比如:

$c->forward(c->dispatcher->get_action_by_path( "/faq" )); # does not work

【问题讨论】:

    标签: perl catalyst


    【解决方案1】:

    我得到了 Catalyst 邮件列表的答案:

    my $path = "/" . join '/', @{$c->req->args};
    
    $c->request->path($path);
    $c->dispatcher->prepare_action($c);
    
    $c->detach($c->action, $c->req->args);
    

    【讨论】:

      猜你喜欢
      • 2012-08-08
      • 1970-01-01
      • 2019-06-11
      • 2016-01-18
      • 2015-06-11
      • 1970-01-01
      • 2012-07-09
      • 1970-01-01
      • 2018-11-04
      相关资源
      最近更新 更多