Pager

Главные вкладки

Аватар пользователя AndreyL AndreyL 8 октября 2012 в 23:13

Здравствуйте. Прошу помочь в таком вопросе. Возможность влияния css / настройки блоков исключил.
Под записью администратора пропадает pager, который выводится в результате запроса к базе данных:

print theme('table', array('header' => $header, 'rows' => $rows));
print theme('pager');

Сам запрос:

if(empty($1параметр) && empty($2параметр))
{
$header = array('1столбец','2столбец','3столбец','4столбец');
$запрос=db_select('Таблица','t')->extend('PagerDefault')->limit(20);
$запрос->condition('НазваниеСтраницы',$title ,'=');
$запрос->fields('t',array('1Столбец', '2Столбец', '3Столбец', '4Столбец'));
$запрос->orderBy('t.2Столбец','asc');
$результатзапроса=$запрос->execute();
$rows=array();
while($строка=$результатзапроса->fetchAssoc())
{
$строки[]=array(array('data'=>$строка['1Столбец']), array('data'=>$строка['2Столбец']),array('data'=>$record['3Столбец']),array('data'=>$record['4Столбец']),);
}

Комментарии

Аватар пользователя AndreyL AndreyL 9 октября 2012 в 0:18

Вот, выяснил, что пейджер отсутствует под записью админа не на всех страницах;
но это не зависит от: языка (англ/рус) заголовка, наличия текста (который был введен в поле Body), раздела (пути, по которому это происходит), включенных модулей (почти все отрубал), наличия сортировки в запросе (вроде нашел сообщения о каких-то багах при наличии сортировки)...
когда обнаружил, модули обновил - без эффекта;
когда проблема возникла - не знаю, обнаружил случайно

Аватар пользователя AndreyL AndreyL 9 октября 2012 в 0:18

Нет. Я ошибся.
Пейджера нет там, где есть текст, введенный в поле Body. При этом для анонимов / др. пользователей все показывается так, как надо.

Надо как-то исправить...

Аватар пользователя sg85 sg85 9 октября 2012 в 1:15

"AndreyL" wrote:
print theme('pager');

Просто любопытно - он там в логах не матерится?

А вообще с drupal.org 1й же комент:
«When calling theme('pager') outside a pager query, it's necessary to initialize the pager first with a call to pager_default_initialize()»
Попробуйте
http://api.drupal.org/api/drupal/includes%21pager.inc/function/pager_def...

Аватар пользователя AndreyL AndreyL 9 октября 2012 в 11:52

В логах записей нет, тоже смотрел.
PagerDefault вызывается как обычно:
«If the items being displayed result from a database query performed using Drupal's database API, and if you have control over the construction of the database query, you do not need to call this function directly; instead, you can simply extend the query object with the 'PagerDefault' extender before executing it.»
(из того же поста http://api.drupal.org/api/drupal/includes%21pager.inc/function/pager_def...)
Вообще, разницы не понял. Раньше так запрос и строил, как во втором примере написано. Но, вроде, первый вид более понятен. Или он не всегда правильно работает???
Ничего пока не понял...