0

Symfony 2 で最初のプロジェクトを作成していますが、各状況でアセット (CSS、JS、画像など) をどこに保存するかについて少し混乱しています。

バンドルをスタンドアロンとして作成し、app/Resources 内のサイト固有のコンテンツでオーバーライドするテンプレート システムのしくみを理解し始めています。

しかし、アセットに関しては、サイト固有のコンテンツ用に app/Resources に「パブリック」フォルダーを作成しますか?

また、バンドルの一部のアセットが web/bundles に保持されるのはなぜですか?

4

2 に答える 2

1

css、images、js などを、それらが属するはずのバンドル内のフォルダーに配置する必要があります。このフォルダが呼び出され、フォルダpublicに含まれResourcesます (当然、その中に、css、js、... 分割用の別のフォルダを作成できます)。

それが完了したら、次のコマンドを使用できます ( Command Line Interface aka CLIから)

php app/console assets:install web

そのようにして、symfony2 (これはデフォルトの動作です) に、含まれるすべてのフォルダーのコピーをフォルダーに、フォルダーに作成するように指示しています。symfony は、アプリケーションのすべてのアセット (ベンダーからのいくつかのアセットを含む) を含む という名前のフォルダーを作成 (または、存在する場合は拡張) します。publicResourcesweb
bundles

注目してください

上記のコマンドを実行すると、リソースのコピーが作成されるため、リソースを変更するたびに、コマンド自体を再度起動する必要があります。より良い方法は、上記のコマンドを次のように変更するシンボリックリンクを使用することです

php app/console assets:install web --symlink

フォルダーを宛先フォルダーとして使用する理由はweb、Web サーバー (Apache なども同じ) はそこに含まれるリソースのみにアクセスし、すべてのリソースを取得するタスクを symfony2 に任せるためです。

それが役に立てば幸い。

于 2013-02-13T10:47:18.720 に答える
0

Symblog チュートリアルを試す...

特にこの部分は資産に関するものです

于 2013-02-13T10:30:36.090 に答える