Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Typo3 具有多个小部件链接的RouteEndhancer_Typo3_Typo3 9.x - Fatal编程技术网

Typo3 具有多个小部件链接的RouteEndhancer

Typo3 具有多个小部件链接的RouteEndhancer,typo3,typo3-9.x,Typo3,Typo3 9.x,到目前为止,我的路由增强器配置如下: routeEnhancers: Plugin: type: Extbase extension: Plugin plugin: Plugin routes: - { routePath: '/test/{var1}', _controller: 'ContactPerson::list', _arguments: { 'var1': '@widget_0/var1' } } defaultControl

到目前为止,我的路由增强器配置如下:

routeEnhancers:
  Plugin:
    type: Extbase
    extension: Plugin
    plugin: Plugin
    routes:
      - { routePath: '/test/{var1}', _controller: 'ContactPerson::list', _arguments: { 'var1': '@widget_0/var1' } }
    defaultController: 'Plugin::list'
    defaults:
      var1: 'a'
    requirements:
      var1: '[a-z]'
我面临的问题是,我的小部件有两个参数(get变量),第二个是可选的。因此,我将路由增强器更改为:

routeEnhancers:
  Plugin:
    type: Extbase
    extension: Plugin
    plugin: Plugin
    routes:
      - { routePath: '/test/{var1}/{var2}', _controller: 'ContactPerson::list', _arguments: { 'var1': '@widget_0/var1' , 'var2': '@widget_0/var2' } }
    defaultController: 'Plugin::list'
    defaults:
      var1: 'a'
      var2: ''
    requirements:
      var1: '[a-z]'
      var2: '[a-z]'

不幸的是,这不起作用,我的路线也不再被识别。

您的var2默认值与
要求不匹配。因此,解析URL时,与RouteHander不匹配

应该是

defaults:
  var1: 'a'
  var2: ''
requirements:
  var1: '[a-z]'
  var2: '[a-z]*'