$query = Material::find()
->where(['in', 'id_material', $ids])
->andWhere('start_publish < :time')
->params([':time' => time()])
->orderBy(['start_publish' => SORT_DESC]);
$count = $query->count();
Гугл юзал, все, что пробовал - не работает. Ну или я криворукий. Подскажите, буду боагодарен
___
Дело в том, что я так уже пробовал. Запрос идет все так же долго
$query = Material::find()
->where(['in', 'id_material', $ids])
->andWhere('start_publish < :time')
->params([':time' => time()])
->orderBy(['start_publish' => SORT_DESC]);
$count = Material::getDb()->cache(function() use ($query) {
return $query->count();
});
Может еще в конфиге чет нужно прописать?
__
с каждым обновлением страницы добавляется бинарный файл /runtime/cache/ee значит кэширует. но почему оно с каждым запросом кэширует? А не достает кэш?
____
убрал время из запроса, вставил компонент в кофиг,
$query = Material::find()
->where(['in', 'id_material', $ids])
->orderBy(['start_publish' => SORT_DESC]);
$count = Material::getDb()->cache(function($db) use ($query) {
return $query->count();
});
но все равно, с каждым обновлением страницы бинарный файл создается по новой, и какждый запрос выполняется долго