यह group by
. के कारण है मुझे एक उपाय मिला। मुझे लिंक डालना अच्छा लगेगा लेकिन मैंने इसे खो दिया है, इसलिए मैं कोड पोस्ट करूंगा:
public function paginateCount($conditions = null, $recursive = 0, $extra = array()) {
$parameters = compact('conditions', 'recursive');
if (isset($extra['group'])) {
$parameters['fields'] = $extra['group'];
if (is_string($parameters['fields'])) {
// pagination with single GROUP BY field
if (substr($parameters['fields'], 0, 9) != 'DISTINCT ') {
$parameters['fields'] = 'DISTINCT ' . $parameters['fields'];
}
unset($extra['group']);
$count = $this->find('count', array_merge($parameters, $extra));
} else {
// resort to inefficient method for multiple GROUP BY fields
$count = $this->find('count', array_merge($parameters, $extra));
$count = $this->getAffectedRows();
}
} else {
// regular pagination
$count = $this->find('count', array_merge($parameters, $extra));
}
return $count;
}
मैंने इसे app_model में जोड़ा है और यह मेरे लिए ठीक काम करता है :)
आशा है कि यह मदद करता है
संपादित: मुझे लिंक मिल गया =)
http://wiltonsoftware.com/posts /व्यू/कस्टम-ग्रुप-बाय-पेजिनेशन-और-ए-कैलकुलेटेड-फ़ील्ड