Всем привет!
Делали в своем проекте модуль один, нужна была пагинация, CPager почему-то создает папку assets с css файлом pager.css, нашел где папку эту поменять, но вот мне непонятно, а зачем это вообще надо? почему бы не иметь просто один файл pager.css в нужной мне директории, он создает кучу генерирует зачем-то. Кто пожскажет как это вылечить и вообще зачем это? заранее спасибо.
Page 1 of 1
Assets
#2
Posted 23 February 2009 - 02:48 PM
идея в том, что ты все свои цсс и яваскрипт файлы ложишь в папку соответствующего компонента/виджета/расширения. Это все назходится в папке protected, которая недоступна через веб (и это абсолютно верно). Поэтому для яваскрипт и цсс файлов используется так называемое публикование. Файлы копируются в папку assets, там создается подпапка с радомным именем, которая досупна из веб. В плюсах - не портится структура, не разбивается все по разным местам, а просто публикуется когда надо. Это как-то хитро кешируется, так что копируется не при каждом запросе. И практически всегда - с последними изменениями. Если че-то поменял во время разработки, а не обновилось - очищаешь папку ассетов и все ОК.
#3
Posted 23 February 2009 - 05:24 PM
удобство сомнительное. 
У нас в проекте сделано так:
_framework
protected
public
В public хранятся css img и js и все такое. Нельзя ли отключить assets и пристроить его css туда?

У нас в проекте сделано так:
_framework
protected
public
В public хранятся css img и js и все такое. Нельзя ли отключить assets и пристроить его css туда?
#4
Posted 23 February 2009 - 10:10 PM
Запросто. ВЕЗДЕ, где используется CClientScript (методы registerScript, registerScriptFile, registerCss, registerCssFile) передаешь не то, что возвращает CHtml::asset(), а свой путь.
Удобство, на самом деле, офигительное, так как позволяет создавать легко переносимые компоненты - перетащил папку с ним и все работает, не вспоминаешь, куда же ты должен положить яваскрипт или там ЦСС (или откуда взять).
Удобство, на самом деле, офигительное, так как позволяет создавать легко переносимые компоненты - перетащил папку с ним и все работает, не вспоминаешь, куда же ты должен положить яваскрипт или там ЦСС (или откуда взять).
Share this topic:
Page 1 of 1