2017-12-27 44 views
0

こんにちは私は2.7からsymfony4に移行しています。私は、カップルの束を持っていると私は指示に従った:https://symfony.com/doc/current/routing/external_resources.htmlsymfony4バンドルの外部ルート

私のconfig/bundle.php:

... 
App\Frontend\MainBundle\FrontendMainBundle::class => ['all' => true], 
... 

私のconfig/routes.yaml:

frontend_main: 
    resource: "@AppFrontendMainBundle/Resources/config/routing.frontend.main.yml" 
       #also tried here without App 

私がメッセージだ:

"frontend_main"の下に認識されないオプション "resource"。

どうすればいいですか?

+0

:あなたは、ファイル名を維持したい場合は

protected function configureRoutes(RouteCollectionBuilder $routes) { $confDir = $this->getProjectDir().'/config'; if (is_dir($confDir.'/routes/')) { $routes->import($confDir.'/routes/*'.self::CONFIG_EXTS, '/', 'glob'); } if (is_dir($confDir.'/routes/'.$this->environment)) { $routes->import($confDir.'/routes/'.$this->environment.'/**/*'.self::CONFIG_EXTS, '/', 'glob'); } $routes->import($confDir.'/routes'.self::CONFIG_EXTS, '/', 'glob'); } 

は、あなただけの最後のインポートの名前を変更(または別のものを追加)することができますバンドルは存在しません。私はバンドルを持っていないので驚くべきことではありません。認識できないエラーは、書式設定/インデントエラーのように見えます。 config/routing.yamlに他に何かありますか? – Cerad

答えて

1

Flexディレクトリ構造を持つSymfony 4では、デフォルトのルーティングファイルはconfig/routes.yamlであり、routing.yamlではありません。ファイルがルーティングの一部としてロードされ、サービス設定としてロードされていないことを確かめますか?

ルーティング設定カーネルをsrc/Kernel.phpにチェックする必要があります。デフォルトでは、次のようになります。私はあなたのリソースのコードに貼り付けました

$routes->import($confDir.'/routing'.self::CONFIG_EXTS, '/', 'glob'); 
+0

はい、デフォルトです。そして、申し訳ありません、ただスペルミスでした。もちろん、routes.yamlです。 symfony4の絶対的なデフォルト。 – craphunter

関連する問題