0

次の質問は SonataAdminBundle に固有のものではありません。同じ設計上の質問がすべてのサードパーティのバンドルに残っていますが、明確にするために特定の例を取り上げました。

バンドル (ある種のバックエンド プロジェクト) を広く使用する新しい Symfony2 アプリケーション用に SonataAdminBundle をインストールしています。

Sonataのドキュメント(および他の多くのバンドルドキュメントも)を読んで、ルーティング/構成/サービスなどに関する情報をアプリケーションレベル、つまりapp/config/XXXに配置する必要があることを読みました

ただし、それが私のプロジェクトでは正しいアプローチだとは思いません。実際、私の「BackendBundle」は SonataAdminBundle に大きく依存しているため、それなしでは機能しません。

これらすべての構成ファイルを、アプリケーションではなく、自分の「BackendBundle」の Ressource フォルダーに直接配置するほうが理にかなっていませんか? 私の考えでは、Sonata 構成のインポートを処理するのはバンドルの役割であり、アプリケーションの役割ではありません。

4

2 に答える 2

1

メインのrouting.ymlファイルからルーティング構成をインポートするとすぐに、ルーティング構成をバンドルに入れることもできます。

バンドルドキュメントでは、簡単な例を使用して、セットアップをすばやく実行します。これが、ルーティングリソースをインポートするその方法が頻繁に見られる理由です。

于 2012-10-12T19:39:17.713 に答える
1

バンドル内でサービスの依存関係を配線する必要がありますが、プロジェクトの実際の構成はアプリケーションに属します。

バンドルが別のバンドルに依存することはまったく問題ありませんが、バンドルに追加する構成は、構成自体ではなく、特にこの依存関係に関連している必要があります。実際の構成はアプリケーションに属し、プロジェクト構成をバンドルに追加すると、実質的に再利用できなくなります。

于 2012-10-12T23:57:21.023 に答える