1

根据 Pimcore 5 文档:

URL 是使用 Symfony 的默认 URL 助手 $this->path() 和 $this->url() 生成的。除了用于生成 URL 的标准帮助器之外,Pimcore 还提供了一个特殊的模板帮助器 ($this->pimcoreUrl()) 来生成 URL,就像您在 Pimcore 4 中所做的那样。您可以使用 %NAME 以相反的模式定义一个占位符,它也是可以定义一个可选部分,这样做只需用大括号 { } 包含该部分(参见下面的示例)。

https://pimcore.com/docs/5.0.x/Development_Documentation/MVC/Routing_and_URLs/Custom_Routes.html

我应该能够使用 path 方法反向构造一条路线,如下所示:

$this->path( 'MyRouteName', [
  'route_param_a' => 'A',
  'route_param_b' => 'B',
  'route_param_c' => 'C'
] );

不幸的是,当我从控制器内部调用它时,我收到以下错误:

试图调用类“AppBundle\Controller\MyController”的名为“path”的未定义方法。

当我直接从控制器(不使用视图)用我的 JSON 对象响应时,控制器范围内是否有类似的函数或方法可用于生成路径?

4

1 回答 1

2

看起来 Pimcore 5 文档中并未包含此问题的答案,而是 Symfony 3 文档!

https://symfony.com/doc/current/routing.html#generating-urls

$url = $this->generateUrl( 'MyRouteName', [
  'route_param_a' => 'A',
  'route_param_b' => 'B',
  'route_param_c' => 'C'
] );
于 2017-11-16T21:38:55.707 回答