2012-12-07 111 views
1

我正在從Joomla網站上的文檔之一工作。我被卡在告訴你修改getData()函數的部分。 「Joomla分頁在自定義組件

」修改getData()函數,將$ limitstart和$ limit值添加到_getList()查詢中,這樣只會返回所需的行,而不是所有行。

function getData() 
{ 
    // if data hasn't already been obtained, load it 
    if (empty($this->_data)) { 
     $query = $this->_buildQuery(); 
     $this->_data = $this->_getList($query, $this->getState('limitstart'), $this->getState('limit'));  
    } 
    return $this->_data; 
} 

我有一個函數,已經建立了mySQL查詢。這是它想要改變的功能嗎?這段代碼替換行目前在我getData()功能:

$db->setQuery($query); 
    $table = $db->loadRowList(); 
    return $table; 

難道我只需要這一行添加到構建MySQL查詢功能或做我需要repalce的東西嗎?

編輯:我正在工作的Joomla文檔可以找到here

+0

我有類似的問題,你解決了嗎? – SomeoneS

+0

我沒有解決它在我正在使用的Joomla文檔中實現的方式。我最終創建了一個AJAX調用來加載我的分頁的可用性。 如果您需要幫助,請打我,我很樂意與您分享我的想法。 – Plummer

回答

2

該返回的所有行:

$表= $ DB-> loadRowList();

這將只返回所需的數據,由分頁程序的限制:

if (empty($this->_data)) { 
     $query = $this->_buildQuery(); 
     $this->_data = $this->_getList($query, $this->getState('limitstart'), $this->getState('limit'));  
    } 
    return $this->_data; 

所以,你應該在你的模型代替function getData()