2017-10-09 9 views
3

同じTreeBuilderエイリアスを使用して2つのバンドルを持つ方法を知りたいと思います。私の場合は複数のバンドルに同じTreeBuilderルートを使用することは可能ですか

は、私は次の設定があります。

harmony: 
    site_name: 'Site name' 
    theme: 'default' 

をそして私は他のバンドルでバンドルとthemeパラメータで定義されたsite_nameを持っていると思います。

実際には、これを達成するために2つの設定クラスを作成します。

最初含む:

$treeBuilder = new TreeBuilder(); 
    $rootNode = $treeBuilder->root('harmony'); 

    $rootNode 
     ->children() 
      ->scalarNode('site_name') 
       ->isRequired() 
       ->info('The name displayed as the title of the site (e.g. company name, project name).') 
      ->end() 
     ->end() 
    ; 

を二: "調和" の下

認識できないオプション "テーマ":私は次の例外メッセージを取得しかし

$treeBuilder = new TreeBuilder(); 
    $rootNode = $treeBuilder->root('harmony'); 

    $rootNode 
     ->children() 
      ->scalarNode('theme') 
       ->isRequired() 
       ->cannotBeEmpty() 
       ->defaultValue('default') 
       ->info('The theme used to render the frontend pages.') 
      ->end() 
     ->end() 
    ; 

最初のバンドルが余分なキーをチェックしていて、2番目のバンドルに定義されているthemeキーが見つかったとします。

私がしたいことを達成する方法はありますか?

答えて

関連する問題