2009-12-14 3 views
0

С помощью CCK я добавил поле к базовому узлу типа «Страница», называемому «Тип ресурса». В раскрывающемся списке можно выбрать четыре типа ресурсов: «Обучение, новости, исследования, инструменты».Drupal: Views Grouping Issue

Я создал представление, которое должно группировать узлы по типу их ресурса. Я создал 8 узлов, 6 из которых имеют тип «Training», 1 имеет тип «Инструменты» и 1 имеет тип «Новости». Drupal выводит следующее:

Training 
- Training Node 1 
- News Node 1 
- Tools Node 1 
- Training Node 2 
- Training Node 3 

Tools 
- Training Node 4 

News 
- Training Node 5 

Research 
- Training Node 6 

Когда я протестирован только с 1 узлом для каждого типа ресурсов, она показывает, как ожидалось:

Training 
- Training Node 1 

Tools 
- Tools Node 1 

News 
- News Node 1 

Я видел другую проводку, где модуль Devel может испортить выходной , но я вижу выше, когда пользователь вышел из системы (и, следовательно, Devel отключен для анонимных пользователей).

Любая идея, что может пойти не так? Мое представление настроено как «Список HTML», сгруппированный по «Тип ресурса».

+0

По вашему мнению, у вас есть «несколько значений группы» проверяются на поле заголовка (или что-то поле outputing Подготовки Узел 1 ', и т.д.)? Устранение этого может дать вам желаемые результаты, но я не могу сказать наверняка, поскольку я не тестировал вашу настройку. – jhedstrom

+0

@jhedstrom Я посмотрел мои настройки и не видел этого параметра. Я посмотрел на каждое поле, чтобы узнать, могу ли я найти эту настройку, но не видел ее нигде. Вы говорите, что оно должно появляться при нажатии на элемент в разделе «Поля» в представлении? «Node: title» - это поле, которое выводится для «Training Node 1» и т. Д. Спасибо за комментарий, но я не могу найти настройки. Может быть ошибка пользователя, хотя :) – Carl

ответ

1

Не уверен на 100%, учитывая, что у меня нет вашей установки для проведения тестов, но похоже, что вы испытываете this issue. В комментарии № 16 Мерлин Хаоса (автор взглядов) содержит патч, который, по-видимому, подтверждает последующие комментарии как «рабочие».

Если это не так, обходным путем может быть сортировка узлов вместо их группировки. Вы можете добавить заголовок группировки, передав в шаблон также значение типа узла: затем вы добавите заголовок с типом контента по сравнению с предыдущим. В псевдокоде:

$type_in_use = 'xxx' 
if $type_of_next_node != $type_in_use then 
    $type_in_use = $type_of_next_node 
    print_header($type_in_use) 

Просто неуловимое обходное решение, но должно работать!

НТН

+0

Я ценю ответ. Я знаю, что его трудно отлаживать, пока он полностью в темноте. Что касается вашего первого комментария - я использую последнюю версию для разработки 6.x-3.0-alpha1, и в соответствии с комментариями к сообщениям об ошибках, которые вы связали, указанный патч был применен ко всем ветвям. Я все равно пытался применить патч, но не повезло. Я собираюсь дать вашему второму предложению попробовать, просто чтобы посмотреть, где он меня достает. Я сообщу здесь, если все пойдет хорошо, и отметьте это, как ответили. Еще раз спасибо! – Carl

+0

Хм, теперь я в замешательстве. Я редактировал файлы шаблонов, просматривал список и затем выходил из системы. После выхода из системы представление получилось отлично! Я ничего не изменил, кроме добавления некоторой логики там, чтобы ограничить количество элементов, выводимых на группу. Так странно! Я предполагаю, что ваше второе решение будет работать, поэтому я собираюсь записать его как ответ и двигаться дальше. Спасибо за ваше время! – Carl