0

プラグインのルートを定義しようとしています。出力にかなりの URL が表示されるため、すべてが正常に機能していますが、残念ながら、それにアクセスしようとすると、次のメッセージで 404 エラーが発生します。

#1303209195: リクエストに一致するコントローラーを解決できませんでした。パッケージ キー: ""、コントローラー名: "Standard"。(GET http://test.local/dashboard/page/subpage/q/1fcff21b-7690-4f54-7491-f49c825ca05f/38f8b0cf-03e9-1717-b5b3-9bc7aa926862 )

メインRoutes.yaml:

-
  name: 'AcmeMyPlugin'
  uriPattern: '<AcmeMyPluginSubroutes>'
  subRoutes:
    AcmeMyPluginSubroutes:
      package: 'AcmeMyPlugin'
      variables:
        'defaultUriSuffix': ''

-
  name: 'TYPO3Neos'
  uriPattern: '<TYPO3NeosSubroutes>'
  subRoutes:
    'TYPO3NeosSubroutes':
      package: 'TYPO3.Neos'
      variables:
        'defaultUriSuffix': ''

プラグインRoutes.yaml:

-
  name: 'Nice urls for my plugin'
  uriPattern:    '{node}/q(/{--acme_myplugin-element.object1}/{--acme_myplugin-element.object2})'
  defaults:
    '@package':    'TYPO3.Neos'
    '@controller': 'Frontend\Node'
    '@action':     'show'
    '@format': 'html'
    '--acme_myplugin-element':
      '@package': 'Acme.MyPlugin'
      '@controller': 'Standard'
      '@action': 'display'
      '@format': 'html'
  routeParts:
    node:
      handler:    TYPO3\Neos\Routing\FrontendNodeRoutePartHandler
  appendExceedingArguments: FALSE

Root.ts2プラグインの場合:

prototype(Acme.MyPlugin:Element) < prototype(TYPO3.Neos:Plugin) {
    package = 'Acme.MyPlugin'
    controller = 'Standard'
    action = 'display'
}

実行しようとしているアクション:

public function displayAction(Object1 $object1 = NULL, Object2 $object2 = NULL) {
    // body
}

Neos 2.0.x-dev を使用しています。構成で何かを見逃していませんか?

4

1 に答える 1

0

わかりました、私は最終的に何が間違っていたかを理解します。オプションのパラメーターを使用してプラグインのルートを定義しましたが、これは何らかの形でリクエスト ハンドラーによって誤って解釈されました。プラグインの正しいルートは次のようになります。

-
  name: 'Nice urls for my plugin'
  uriPattern:    '{node}/q/{--acme_myplugin-element.object1}/{--acme_myplugin-element.object2}'
  defaults:
    '@package':    'TYPO3.Neos'
    '@controller': 'Frontend\Node'
    '@action':     'show'
    '@format': 'html'
    '--acme_myplugin-element':
      '@package': 'Acme.MyPlugin'
      '@controller': 'Standard'
      '@action': 'display'
      '@format': 'html'
  routeParts:
    node:
      handler:    TYPO3\Neos\Routing\FrontendNodeRoutePartHandler
  appendExceedingArguments: FALSE
于 2015-05-21T09:01:27.887 に答える