[英]Yii not automatically publishing assets on change
我正在使用一個遠程Ubuntu網絡服務器進行開發的Yii項目。
我已經更改了通過AssetManager發布的Javascript文件。 該文件已上傳到Web服務器,但是AssetManager尚未檢測到新文件並重新發布資產。
標准建議是刪除資產文件夾的內容-但是,如果我刪除文件的已發布版本,則不能替換它-我只是在瀏覽器中收到找不到文件的錯誤。
我猜我某個地方的權限有誤,但是(因為它是開發服務器)即使更改為777也不能解決此問題-有人知道我如何讓AssetManager識別資產的變化嗎?
下面的AssetManager代碼:
$assetFolder = Yii::app()->getAssetManager()->publish(Yii::getPathOfAlias('alias.path.to.folder'));
Yii::app()->clientscript->registerScriptFile($assetFolder.'/assetname.js');
嘗試通過以下方式發布文件:
$cs = Yii::app()->clientScript;
$cs->registerScriptFile(Yii::app()->getAssetManager()->publish('path/to/file.js'));
如果文件被更改,此功能會自動將文件發布到assets
文件夾,並使用assets
文件夾中腳本文件的適當路徑將<script>
標記添加到HTML。
如果您嘗試發布文件夾,assetManager將不會遵循此文件夾中文件的更改,而只會發布一次。 或者,您可以在publish()函數中傳遞參數$ forceCopy來每次重新發布文件夾。
http://www.yiiframework.com/doc/api/1.1/CAssetManager#publish-detail
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.