2013-05-17 46 views
1

我會盡量保持它簡短,不想浪費你的時間。工作在開發環境:Symfony2資產生成死鏈接dev

模板:

{% block javascripts %} 
    {% javascripts '@SomeBundle/Resources/public/js/*' %} 
     <script type="text/javascript" src="{{ asset_url }}"></script> 
    {% endjavascripts %} 

{% endblock %} 

HTML輸出:

<script type="text/javascript" src="/js/98b0881_part_1_fill_form.jquery_1.js"></script>        
<script type="text/javascript" src="/js/98b0881_part_1_jquery-1.8.3.min_2.js"></script> 

,所以它讀取資源/公/ JS目錄的內容,並使得與右連桿正確的號碼名。當我點擊指定的網址不過,我得到404阿帕奇響應:

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> 
    <html><head> 
     <title>404 Not Found</title> 
    </head><body> 
    <h1>Not Found</h1> 
    <p>The requested URL /js/98b0881_part_1_jquery-1.8.3.min_2.js was not found on this server.</p> 
    <hr> 
    <address>Apache/2.2.22 (Ubuntu) Server at ipardon.loc Port 80</address> 
</body></html> 

這幾乎意味着沒有JS,我在我的網頁。 我有什麼企圖:

app/console assets:install web --no-dev 
app/console assetic:dump --no-dev 

在config.yml將包名稱assetic.bundles [] 使用Google(當然)

人遇到這樣的事情之前?我有,並通過不使用資產來「解決」它,但我希望這次能夠做到。有任何想法嗎?

+0

你嘗試應用/控制檯assetic也相關信息:傾倒? – snyx

+0

是的,我有..... – Kuro

+0

好吧,所以我清除緩存,將config.yml中的assetic.use_controller更改爲true(爲false,但在config_dev.yml中爲true)並嘗試資產:重新轉儲。它在我的web目錄中輸出了文件。這是否意味着我必須在每次更改js文件後調用它?問心無愧?那超級超酷的「資產會動態地產生一切」的東西是什麼?我真的覺得它很有用,但它不會像這樣可行! – Kuro

回答

5

描述here可以使用

php app/console assetic:dump --watch 

是否會自動切斷你的資產,他們被改變。

this後竟在這個問題上

+0

該命令記得我使用非標準公共根。使用http://stackoverflow.com/a/14219582/1203805我糾正它,並evathg作品像一個魅力 – userlond

1

在生產中,每次部署只需要轉儲一次,這可以自動進行(請參閱Capifony)。

在發展中不使用--no-dev參數,這使得assetic轉儲只編譯文件,忽略了局部/js/98b0881_part_1_jquery-1.8.3.min_2.js