0

Asseticを使用してJavascriptファイルをインクルードしていますが、開発環境で使用する/app_dev.phpと、URLの先頭に追加されるため、最終的なURLはのようになり/app_dev.php/js/something.jsます。これにより、JSを読み込もうとすると404になります。本番環境からサイトにアクセスすると、URLが含まれ/app_dev.php、すべてが正常に機能します。

それが開発環境であるかどうかをチェックし、URLを呼び出す条件を追加することもできstr_replaceますが、可能であれば、この問題の根本を解決したいと思います。

編集

@gilden、開発では毎回処理されることを理解しますが、URLは単に404になります。

これが私のAssetic設定です:

assetic:
    debug:          %kernel.debug%
    use_controller: false
    filters:
        cssrewrite: ~
        # closure:
        #     jar: %kernel.root_dir%/java/compiler.jar
        # yui_css:
        #     jar: %kernel.root_dir%/java/yuicompressor-2.4.2.jar

テンプレート(app / Resources / views / base.html.php)での使用方法は次のとおりです。

foreach ($view['assetic']->javascripts(
            array('@AssetsBundle/Resources/public/js/*'), array(), array('output' => 'js/combined.js')) as $url) {
            echo 'url: ' . $url . '<br />';    
        }

次に、作成したカスタムヘルパーを使用して$ urlを含めますが、その時点ですでにapp_dev.phpが含まれています。

4

1 に答える 1

2

私はSymfonyでphpテンプレートを使用したことがないので、最善の答えがないのではないかと思います。カスタムコードを使用することで、コントローラーへの要求を処理する内部ロジックを回避している可能性があります。

assetic: use_controller: true回避策として、から削除してみてください/app/config_dev.yml

于 2011-09-08T18:23:58.243 に答える