Phalcon - 资产管理 - 该集合在管理器中不存在
Phalcon - Asset Management - The collection does not exist in the manager
在我的网站中,我有一些带有 jquery 灯箱的页面和一些没有灯箱的页面,以加载我在控制器函数中使用的包,该函数加载包并将其分配给占位符。
public function loadJSLightbox2()
{
$this->assets
->collection('lightboxJs')
//->setPrefix($this->config->site->cloud_url)
->addJs('web/dist/lightbox2/dist/js/lightbox.min.js');
$this->assets
->collection('lightboxCss')
//->setPrefix($this->config->site->cloud_url)
->addCss('web/dist/lightbox2/dist/lightbox.min.css');
}
但是在我的伏特主模板(主模板)中,我定义了如下所示的占位符,
{{ assets.outputJs('lightboxJs') }}
{{ assets.outputCss('lightboxCss') }}
只要我们在加载页面时调用此 loadJSlightbox2 函数,就可以正常工作。在我不需要加载插件的页面(这两个资产是空的)我得到如下错误调用。
Phalcon\Assets\Exception: 该集合在管理器中不存在
如何在我的 Web 应用程序中使用 phalcon 资产管理工具存档此可选插件行为?
我使用以下代码解决了这个问题,
{% for key, collection in assets.getCollections() %}
{% if key == 'origin' %}
{{ assets.outputJs('origin') }}
{% endif %}
{% if key == 'lightboxJs' %}
{{ assets.outputJs('lightboxJs') }}
{% endif %}
{% if key =='colorboxJs' %}
{{ assets.outputJs('colorboxJs') }}
{% endif %}
{% endfor %}
在我的网站中,我有一些带有 jquery 灯箱的页面和一些没有灯箱的页面,以加载我在控制器函数中使用的包,该函数加载包并将其分配给占位符。
public function loadJSLightbox2()
{
$this->assets
->collection('lightboxJs')
//->setPrefix($this->config->site->cloud_url)
->addJs('web/dist/lightbox2/dist/js/lightbox.min.js');
$this->assets
->collection('lightboxCss')
//->setPrefix($this->config->site->cloud_url)
->addCss('web/dist/lightbox2/dist/lightbox.min.css');
}
但是在我的伏特主模板(主模板)中,我定义了如下所示的占位符,
{{ assets.outputJs('lightboxJs') }}
{{ assets.outputCss('lightboxCss') }}
只要我们在加载页面时调用此 loadJSlightbox2 函数,就可以正常工作。在我不需要加载插件的页面(这两个资产是空的)我得到如下错误调用。
Phalcon\Assets\Exception: 该集合在管理器中不存在
如何在我的 Web 应用程序中使用 phalcon 资产管理工具存档此可选插件行为?
我使用以下代码解决了这个问题,
{% for key, collection in assets.getCollections() %}
{% if key == 'origin' %}
{{ assets.outputJs('origin') }}
{% endif %}
{% if key == 'lightboxJs' %}
{{ assets.outputJs('lightboxJs') }}
{% endif %}
{% if key =='colorboxJs' %}
{{ assets.outputJs('colorboxJs') }}
{% endif %}
{% endfor %}