Здравствуйте, поясните
1) момент:
не понимаю что значит в не кешируемой части, это где?
Вот у меня в компоненте формируется массив с ключом ELEMENTS в котором "собираются" все элементы которые потом циклом выводятся в шаблоне компонента
мне потом нужно этот ключ добавлять вот так?
$this->SetResultCacheKeys(array("ELEMENTS", "CLASSIF", "COUNT"));
2) момент
Не понятно что имеется ввиду, можно "не правильный" пример хотя бы?
1) момент:
Цитата |
---|
(!) В кеш компонента сохраняются значения только тех переменных, которые будут использоваться далее в некешируемой части компонента. Это необходимо чтобы не допустить разрастание размера файлов кеша и роста ресурсов на их парсинг. При большом объеме данных в файлах кеша можно получить не прирост производительности, а обратную ситуацию. По умолчанию компонент сохраняет в кеш весь arResult (поведение для обратной совместимости), разработчик обязательно должен поместит в кеш только те данные, что будет использовать в некэшируемой части. |
не понимаю что значит в не кешируемой части, это где?
Вот у меня в компоненте формируется массив с ключом ELEMENTS в котором "собираются" все элементы которые потом циклом выводятся в шаблоне компонента
Цитата |
---|
$arResult["ELEMENTS"] = array();while ($rsElementCat = $rsElementsCatalog->GetNextElement()) { $arFields = $rsElementCat->GetFields(); $arFields['PROPS'] = $rsElementCat->GetProperties(); foreach ($arFields['PROPS']['FIRMA']['VALUE'] as $value) { $arClassif[$value]["ELEMENTS_ID"][] = $arFields['ID']; } $arResult["ELEMENTS"][$arFields['ID']] = $arFields; } |
мне потом нужно этот ключ добавлять вот так?
$this->SetResultCacheKeys(array("ELEMENTS", "CLASSIF", "COUNT"));
2) момент
Цитата |
---|
7. Создание комплексного компонента (!) Страница компонента, значения переменных, шаблоны ссылок для страниц - определяется с помощью типовых механизмов комплексного компонента, а не «в ручную» по $_REQUEST и другим данным. |
С ув. Вячеслав Докукин