Представления не показывают поля флажка, где ответ> 1 - PullRequest
0 голосов
/ 24 февраля 2010

Я использую Drupal с Views и активирован модуль расширенных профилей. Чтобы пользователи могли проверять несколько областей интереса, я также добавил модуль под названием Профиль Флажки . Он добавляет возможность использовать список произвольной формы, но превращает его в флажки или переключатели.

Этот модуль работает очень чисто и не содержит ошибок. Но если пользователь проверяет несколько интересов, они сохраняются в таблице profile_values в виде значения, разделенного запятыми.

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

+-----+-----+---------------------+
| fid | uid | value               |
+-----+-----+---------------------+ 
| 12  | 32  | cars, trucks, bikes |
+-----+-----+---------------------+

Я хочу, чтобы представления правильно обрабатывали это для меня, чтобы я мог создавать фильтры, которые показывают только тех пользователей, которые ввели интерес. Это дает мне возможность проверить, «если муравей из» выбранных значений в списке, я выбрал все значения в списке. Но он показывает только тех пользователей, которые отметили одно из значений. Надеюсь, это имеет смысл.

Нужно ли мне кодировать это в пользовательском файле tpl или это можно сделать с помощью Views?

Ответы [ 2 ]

1 голос
/ 25 февраля 2010

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

0 голосов
/ 25 февраля 2010

Простой (и не очень правильный способ) использует фильтр «Содержит» для этого поля «значение» в представлениях, поэтому он будет запрашивать как: значение как «% trucks%»
Другой способ (но не очень хороший): удаление нефильтрованных данных в хуках представлений после того, как они получат данные, и попытка вывода: см. Файл о хуках. \ Sites \ all \ modules \ views \ docs \ docs.php.

постскриптум Представления + CCK + Content Profile, думаю, будут лучше.

...