Доброго всем.
Вопрос задам основываясь на стандартном примере:
$c = $modx->newQuery('modResource');
$c->innerJoin('modTemplateVarResource','TemplateVarResources');
$c->innerJoin('modTemplateVar','TemplateVar','`TemplateVar`.`id` = `TemplateVarResources`.`tmplvarid`');
$c->where(array(
'TemplateVar.name' => 'featured',
'TemplateVarResources.value' => 1,
));
$resources = $modx->getCollection('modResource',$c);
foreach ($resources as $resource) {
/* each $resource is a xPDOObject, so $resource->get('id') and such... */
}
Каким образом я могу узнать количество записей при такой выборке без учета TV параметров? именно количество документов с заданным выше условием по TV?
Если ничего не путаю, то $modx->getCount(’modResource’, $с); - возвращает общее количество ВСЕХ выбранных записей. А мне надо узнать только количество modResource.id
Памажите я ни пнимаю
Возможно все, но шансы астрономически малы
Ок. Задам вопрос по другому.
Как мне узнать количество страниц с определенным значением TV?
Возможно все, но шансы астрономически малы
Сделайте запрос только к modTemplateVar, зачем вам modTemplateVarResource?
Quote from: Mraymax at Oct 04, 2010, 08:04 AM
Сделайте запрос только к modTemplateVar, зачем вам modTemplateVarResource?
Спасибо. Более менее разобрался. Мне xPDO просто мозг выносит, туго усваиваю.
Возможно все, но шансы астрономически малы
Правда xPDO не всесилен(а может просто я пока что слишком плохо в нём разобрался). Вот, например, так и не понял как сделать запрос с MAX(), писал голый запрос с помощью xPDOCriteria.