Drupal 7 Drupal 7主题(';';寻呼机';)->;表get';它被渲染但没有寻呼机?

Drupal 7 Drupal 7主题(';';寻呼机';)->;表get';它被渲染但没有寻呼机?,drupal-7,themes,pager,dynamicquery,Drupal 7,Themes,Pager,Dynamicquery,我有一个包含数据库数据的表,我希望它有一个寻呼机,我有一个示例(buildamodule.com)和其他站点的所有代码,我的表得到了渲染,但它没有生成寻呼机,尽管我的行数超过了限制: 职能: function get_loyaltycodes(){ $headers = array( array( 'data' => t('Code') ), array( 'data' => t('Info') ), arra

我有一个包含数据库数据的表,我希望它有一个寻呼机,我有一个示例(buildamodule.com)和其他站点的所有代码,我的表得到了渲染,但它没有生成寻呼机,尽管我的行数超过了限制:

职能:

function get_loyaltycodes(){
$headers = array(
    array(
        'data' => t('Code')
    ),
    array(
        'data' => t('Info')
    ),
    array(
        'data' => t('Points')
    ),
    array(
        'data' => t('Consumed by')
    ),
);
$limit = variable_get('codes_per_page',5);
$query = db_select('loyalty_codes','lc');
$query -> fields('lc',array('code','info','points','uid'))
       -> orderBy('lc.info','ASC')
       -> extend('PagerDefault')
       -> limit($limit);


 //to see all codes for a certain amount of points, just append the number of points to the URL    
 $arg = arg(2);
 if($arg != '' && is_numeric($arg))
 {
    $query->condition('points', $arg);
 }

// Fetch the result set.
 $result = $query->execute();
 $rows = array();
  // Loop through each item and add to the $rows array.
  foreach ($result as $row) {
    $rows[] = array(
        $row->code, 
        $row->info, 
        $row->points, 
        $row->uid, 
    );
  }

  // Format output.
  $output = theme('table', array('header' => $headers, 'rows' => $rows)) . theme('pager');

  return $output;
$limit变量在设置表单中设置为5,在数据库中也设置为5

有人知道为什么传呼机不显示吗?也许输出中的格式有问题


非常感谢您的帮助

显然,我无法立即登录,因为我在防火墙后面,无论如何,我似乎已经修复了它,尽管这是一个愚蠢的错误:

查询中的
'->extend('PagerDefault')
扩展必须是菊花链中的第一个函数。如果没有,则没有错误,但函数似乎没有被调用

$query = db_select('loyalty_codes','lc')
        ->extend('PagerDefault')
        -> fields('lc',array('code','info','points','uid'))
        -> orderBy('lc.info','ASC')
        -> limit(5);//$limit);

显然,我无法立即登录,因为我在防火墙后面,无论如何,我似乎已经修复了它,尽管这是一个愚蠢的错误:

查询中的
'->extend('PagerDefault')
扩展必须是菊花链中的第一个函数。如果没有,则没有错误,但函数似乎没有被调用

$query = db_select('loyalty_codes','lc')
        ->extend('PagerDefault')
        -> fields('lc',array('code','info','points','uid'))
        -> orderBy('lc.info','ASC')
        -> limit(5);//$limit);

它不需要是链中的第一个函数(我以前也这么认为)。看看公认的答案,它很好地清除了它,它不需要是链中的第一个函数(我以前也这么认为)。请看已被接受的答案,它很好地澄清了问题