В принципе, я хочу создать представление о блочном диаплее, которое отображает список всех пользователей, которые разместили некоторые узлы на веб-сайте drupal.Создание представления пользователей, создавших узлы
ответ
Как ни странно думать об этом прямо сейчас, это может быть немного сложно. У вас есть два возможных решения от верхней части головы.
1 - Создать новый вид товара Узел. Очевидно, что ваш стиль строки будет установлен на Поля. Под которым Поля, чтобы тянуть выбрать Пользователь группу, а затем отметьте Пользователь: Имя checkbox. Установите Элементы для отображения на для неограниченного количества результатов.
При предварительном просмотре вы должны получить тонну результатов, которые ищут что-то вроде:
Имя: John Doe
Имя: Мэри Джейн
Имя: John Doe
Имя: Anonymous
Что вы видите, являются авторами всех узлов, размещенных в вашей системе. Будет дублирование, поскольку пользователь в вашей системе может быть автором нескольких узлов. К сожалению, вы не можете просто отметить галочкой Distinct:Да вариант, поскольку это относится только к узлам, а не к пользователям.
Как бороться с дублирующимися результатами имени пользователя tho? Пользовательская тема вашего представления, создав пользовательский шаблон под Тема: информация. Внутри шаблона напишите некоторый PHP-код, который перехватывает результаты строки из запроса View перед его отображением и отображает только отдельные имена пользователей из результатов. Вам нужно будет написать логику, чтобы определить, было ли добавлено имя пользователя.
Так же просто, как создать новый настраиваемый массив, добавив каждый результат строки (имя пользователя) в массив, но сначала проверив, будет ли он уже существовать в вашем настраиваемом массиве, - если он делает, то бросает его и переходит к следующему пользователю имя. В конце вы получите массив, заполненный разными именами пользователей, которые разместили на вашем сайте.
voila! Оно работает. Это не изящно, но это определенно будет работать, если будет построено таким образом.
2 - Или, может быть, вы можете заставить этот модуль работать над тем же самым делом менее сложным образом: http://drupal.org/project/views_customfield, но я никогда не использовал его, поэтому я не могу прокомментировать его.
Удачи. Надеюсь, это поможет.
Мое решение было:
- Создать представление людей
- Добавить в UID поле (и любые другие поля, которые вы хотите)
- Создать файл theme.tpl.php для Row Style
- Выполняйте вызов БД в каждом цикле через строку для поиска узлов, созданных с помощью предоставленного UID.
Вот что у меня есть в моих semanticviews-View-полей-VIEWNAME.tpl.php
<?php
//Query the Drupal DB for nodes associated to the supplied UID
$existing_nid = db_query("SELECT nid FROM {node} WHERE (type = :ctype) AND uid = :uid", array("ctype" => "CONTENT_TYPE", "uid" => $fields['uid']->content))->fetchField();
//If the supplied UID created content of the supplied type, then show their name
if ($existing_nid != FALSE) {
echo "Name:" . $fields['name']->content;
}
?>
Таким образом, только UID-х, которые контент, связанный с ним в БД будет распечатан , а те, которые этого не делают, не будут.
Надеюсь, что это поможет!
- 1. Drupal: создание представления, которое извлекает связанные узлы на основе терминов
- 2. Создание представления?
- 3. Создание представления администратора с операциями CRUD для пользователей-разработчиков
- 4. Создание представления, которое показывает плитки как типы пользователей
- 5. Как получить недавно просмотренные узлы, используя представления в drupal7
- 6. Пользователь выбирает узлы для пользовательского представления (DRUPAL)
- 7. Использование XSLT для создания пользователей (сравнивающие узлы)
- 8. Создание пользовательского представления администратора
- 9. Создание иерархического представления
- 10. Создание пользовательского представления android
- 11. Создание отладочного представления Eclipse
- 12. Создание расширяемого представления iOS
- 13. Odoo. Создание пустого представления
- 14. Создание представления объекта
- 15. Создание подробного представления Django
- 16. Создание представления под Дженкинс
- 17. Создание представления для узла
- 18. Создание статического представления сетки
- 19. Oracle - создание материализованного представления
- 20. Создание диспетчера представления меню
- 21. Создание теневого представления
- 22. Создание представления (cakePHP noob)
- 23. Создание строго типизированного представления
- 24. iOS Programmatically Создание представления
- 25. Создание представления SQL
- 26. Создание представления нескольких соединений
- 27. Создание динамического представления
- 28. Создание индексированного представления
- 29. Создание пользовательского представления
- 30. Создание представления над объектом
Эй, спасибо большое, но я решил то же самое с помощью другого модуля. Есть поле просмотра, называемое view_custom_field..потребило запрос в tat 4 wt i need..n помогло ..newys thnx много 4 ur hlp .. –