Где мой пейджер Drupal View? - PullRequest
4 голосов
/ 06 января 2010

У меня есть сайт Drupal 6, на котором я создал представление, отображающее список узлов. Ничего сложного - за исключением того, что когда я выбираю «использовать пейджер» -> «да» (и выбираю опцию «полный пейджер»), пейджер не появляется на странице. Появляется первая страница узлов, но нет возможности попасть на другие страницы.

Посредством поиска в Google я увидел, что у некоторых людей возникла проблема с элементом «Элемент пейджера», поэтому я изменил его с 0 на 1 - не повезло.

Это не должно быть очень сложным, но я уже некоторое время занимаюсь этим!

Помощь!

ETA: Я проследил это до следующих строк в /modules/views/theme/theme.inc:

$pager_theme = views_theme_functions($pager_type, $view, $view->display_handler->display);
$vars['pager']  =  theme($pager_theme, $exposed_input, $view->pager['items_per_page'], $view->pager['element']);

Первая строка возвращает массив; вторая строка ничего не возвращает.

Теперь я подозреваю, что это проблема с используемой мной пользовательской темой, которая, возможно, не была полностью корректно обновлена ​​для Drupal 6 - например, может быть, мне как-то не хватает шаблона пейджера? - Тем не менее, я довольно новичок в Drupal и не очень понимаю, как дальше отследить и исправить проблему. Любой совет будет высоко ценится!

ETA еще раз:

Пейджер также не отображается при использовании Garland, так что это не проблема темы. ТАКЖЕ: у меня есть копия этого сайта, также настроенная на сервере разработки, и эта копия имеет рабочую нумерацию страниц! Я проверил то, что, по моему мнению, может быть другим - файлы в теме, какие модули включены - и кажется, что все в основном одинаково. Одна вещь, которую я знаю, отличается, однако, заключается в том, что на производственном сервере установлена ​​более низкая версия MySQL (ниже, чем рекомендуется для Drupal 6 - мы ожидаем, что хостинговая компания сможет изменить это позже). Имеет ли смысл, что старая версия MySQL не может правильно выполнять нумерацию страниц в Drupal 6? Если так, кто-нибудь знает обходной путь, который я могу сделать, пока мы не сможем обновить MySQL?

Ответы [ 4 ]

5 голосов
/ 17 апреля 2010

У меня была эта проблема, и я решил ее следующим образом:

отредактируйте свой вид: нажмите «Использовать пейджер» и установите «Элемент пейджера» от 0 до 1. Сохраните вид.

3 голосов
/ 04 февраля 2010

Это был MySQL с самого начала! Переехал на новый сервер с верной версией MySQL, и все снова стало очень интересным.

2 голосов
/ 10 января 2010

Похоже, что вы самостоятельно сделали много проблем. Попробуйте использовать тему по умолчанию, такую ​​как Garland, и посмотрите, исправит ли это. Если это так, вы знаете, что это проблема темы.

1 голос
/ 14 января 2010

Пара вещей, которые вы можете попробовать:

  • Клонируйте вид и посмотрите, появится ли там пейджер.
  • Изменить вид из списка узлов на список полей и обратно (или наоборот)
  • Проверьте, есть ли у вас комментарии в представлении. Отключите комментарии, чтобы увидеть, вызывает ли это проблему, поскольку комментарии имеют собственный пейджер. (Если вам нужны комментарии, вам, возможно, придется изменить номер своего пейджера на большее, чем количество узлов, т.е. количество узлов +1)
  • Включение / выключение опции пейджера ajax
  • Проверьте ваш .htaccess на рабочем сервере. Настройте RewriteBase
  • Попробуйте сбросить базу данных и восстановить ее снова. Обновление с 4 до 5 может неправильно настроить параметры сортировки в таблицах.

Это все, что я могу придумать в данный момент, чтобы попытаться без дополнительной информации. Может помочь экспорт вашего вида.

Также вы пытались сделать копию сайта на производственном сервере под другим доменным именем или поддоменом? Может быть, избавиться от некоторых проблем таким образом. Удачи!

...