1。一资产的作用:

1.yii资产方便模块化,插件,一般不允许访问受保护的安全的原因以下文件的URL,但我们也希望模块分开的,所以需要使用即将发布,文件目录复制以下资产方便通过URL。


美元资产= Yii::getpathofalias('ext)。 / CSS的;
//$baseUrl = Yii:: app () ->getAssetManager () ->publish ($assets);
$ URL地址=一::APP()->财富管理->发布(美元资产); / / /扩展CSS发表的一个随机的创作,在资产不冲突的文件夹
Yii::APP(->注册-> registercssfile)($ URL地址。' /主。CSS); / /资产引用以下main.css




2。如果一个模块需要增加资源的使用,它可以从Webroot参考直接添加。

但是,尝试创建一个模块可以在任何地方引用,资源是独立的,可以避免命名冲突。

如何确保文件名与一些分散应用程序使用相同名称的文件不冲突,如JS、图像和CSS。

与cassetmanager,Yii应用程序::()-> AssetManager可以自动发布私人资源Webroot公司/资产在公共目录



两。使用的例子:

下面是使用管理模块来说明资产的使用情况:

1,将所需的资源放在模块/管理/资产下。

2、通过cassetmanager,Yii应用程序::()-> AssetManager可以自动发布的私有资源发布到Web目录 /资产在公共目录

3、Yii自动创建一个文件夹,并不是网站目录 /资产相互冲突,如2b31b42b,复制你的模块的文件 / /资产目录管理。

通过下面的代码,修改保护模块管理员 adminmodule.php文件,


< PHP
类adminmodule延伸cwebmodule
{
私人_assetsurl美元;

公共功能getassetsurl()
{
如果(美元-> _assetsurl = = = null)
美元-> _assetsurl = Yii应用程序::()-> getassetmanager()->发布(Yii::getpathofalias('application。模块,管理资产));
返回_assetsurl美元->;
}

公共功能setassetsurl(价值)
{
美元-> _assetsurl =价值;
}
}




然后,使用美元->模块-> assetsurl / / /行政保护模块 / / / main.php布局视图,你可以叫你的CSS和其他文件。代码如下。


模块-> assetsurl;> / / CSS cssrel=nofollow /外




在使用之前,还需要强制资产更新代码如下所示:


basejsurl美元=一::APP()-> getassetmanager()->发布($ basejspath,虚假,1,yii_debug);