當使用Drupal尋呼機時,有幾個陷阱。首先,如果在單個頁面上有多個pager_query(),那麼頁面上的每個「pager」元素將默認只引用第一個查詢。所以你應該做的第一件事是檢查你是不是使用多個pager_queries到不同的數據庫。如果您正在使用Drupal的7.0,那麼這是一個正確形成的尋呼機查詢應該是什麼樣子:
$query = db_select('node','n')->extend('PagerDefault');
$query->limit(10);
$query->fields('n',array('nid',))
$query->orderBy('n.nid','DESC');
如果你能找到重複的尋呼機查詢,那麼你可以設置使用引用該尋呼機查詢:
$pager = array(
'tags' => array(),
'element' => 1, /* 0 for first query on the page, 1 for second etc. */
'quantity' => 5,
'parameters' => array(),
);
$form['table'] = array(
'#markup' => theme_table($variables) . theme_pager($pager),
);
如果您使用的是Drupal 6,那麼解決方案可能會稍有不同。