Как добавить скрипты и таблицы стилей внутри модуля yii

Я новичок в yii. Я только что создал модуль в yii, структура файла выглядит следующим образом

-yii -protected -modules -admin -controller -model -view -layout -main.php -css -style.css -images -logo.jpg 

Мне удалось настроить макет таким образом

 'modules'=>array( // uncomment the following to enable the Gii tool 'admin'=>array( 'layoutPath' => 'protected/modules/admin/views/layouts', ; 

)

и теперь макет отображается из модуля администратора, проблема в том, что я не могу загрузить таблицы стилей, используя

 <link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->request->baseUrl; ?>/protected/modules/admin/css/reset.css" media="all"> 

Кто-нибудь знает правильный способ загрузки таблиц стилей в yii

Все под вашей защищенной папкой действительно защищено, а не доступно для общественности.

в вашем случае, что вы используете модуль, а ваши файлы находятся в защищенных папках, вам нужно «публиковать» их, чтобы они были общедоступными. общедоступную папку по умолчанию для опубликованных материалов в Yii, называемую «активы». и для публикации мы будем использовать CAssetManager .

Сначала создайте папку, содержащую все ваши css, js и изображения, для которых вам нужен открытый доступ. назовите его, как хотите, но стандартизируйте его «активы», так что ваша файловая структура выглядит так:

  -yii -protected -modules -admin -controller -model -view -layout -main.php -assets -css -style.css -js -images -logo.jpg 

В вашем модуле создайте свойство, которое будет хранить общедоступный URL-адрес опубликованного актива и метод доступа к нему.

 private $_assetsUrl; public function getAssetsUrl() { if ($this->_assetsUrl === null) $this->_assetsUrl = Yii::app()->getAssetManager()->publish( Yii::getPathOfAlias('admin.assets') ); return $this->_assetsUrl; } 

Затем вы можете получить доступ к своим активам следующим образом:

 <link rel="stylesheet" type="text/css" href="<?php echo $this->module->assetsUrl; ?>/css/main.css"/> ... <div id="logo"> <?php echo CHtml::link( CHtml::image($this->module->assetsUrl.'/images/logo.png'), array('/xxii')); ?> </div> 

дальнейшее чтение