我注意到,Yii在资产目录中创建了一些奇怪的目录(8523d23或10s89b92这样的名字),这甚至在运行时发生.例如,我的一个表中有一个记录超过10条,分页踢入,我在资产子目录pager.css中找到了一个新的文件.
当我将网站从测试移动到生产时,应该复制所有这些,还是创建一个空的“资产”目录,并在运行时填写?
例如,我希望添加jquery.charcounter.js,我将其复制到资产或yii / framework / web / js / source?如果我做后者,我如何得到这个.js文件包含在HTML页面输出?
资产应该是可写目录. Yii负责资产管理.
通过调用Yii :: app() – > assetManager-> publish()可以将一些样式表,图像,脚本甚至整个目录放入web-visible文件夹中.
pager.css和其他不熟悉的文件由小部件(例如CLinkPager)和其他组件(例如CClientScript在您需要时发布jQuery)生成.
在部署过程中,此文件夹应为空,但并不重要.
添加插件不应该通过框架文件夹完成.您可以将它们放置在组件目录中,并在需要时发布运行时,或者放入任何其他方便的可见目录(如图像或CSS).
更新
要嵌入jquery.charcounter.js,将其放在组件目录中,然后调用
Yii::app()->clientScript->registerScriptFile( Yii::app()->assetManager->publish( Yii::getPathOfAlias('application.components').'/jquery.charcounter.js' ),CClientScript::POS_END );