Как реализовать необязательные пустые параметры при определении пользовательского RouteEnhancer типа «Плагин» с конфигурацией сайта Typo3 9.5 LTS? - PullRequest
1 голос
/ 07 апреля 2020

Я хочу перенести старое расширение на Typo3 9.5. и интересно, как настроить необязательные параметры URL.

Использование значений по умолчанию позволяет опускать параметры в конце, но как мне разрешить опускать параметры в середине, например, example.com/filter//foo/bar или example.com/filter/foobar//bar.

Это мой Конфигурация сайта. Он хорошо работает с параметрами.

routeEnhancers:
  filter:
    type: Plugin
    routePath: '/filter/{param0}/{param1}/{param2}'
    namespace: 'tx_myextension_myplugin'
    defaults:
      param0: ''
      param1: ''
      param2: ''
    aspects:
      param0:
        type: MyValueMapper
      param1:
        type: MyValueMapper
      param2:
        type: MyValueMapper

Это не расширение Extbase, поэтому контроллер работает следующим образом. В действительности у меня есть еще несколько параметров.

class MyController extends ActionController{
  public function filterAction() {
    // $this->request->getArgument('param0');
    // $this->request->getArgument('param1');
    // $this->request->getArgument('param2');
  }
}
...