Drupal OG Views: не может создать представление всех групп, в которых я * не * в данный момент состою - PullRequest
0 голосов
/ 06 октября 2009

(также опубликовано как http://drupal.org/node/596860)

Я хотел бы создать представление, показывающее только те группы, в которых я не уже являюсь членом (или ожидающим участником). Однако очевидный способ сделать это (выбрать представление og_my и изменить фильтр «Органические группы: член группы» на false) не работает.

Причина в том, что SQL-запрос по существу возвращает одну строку для каждого пользователя в группе, которая соответствует вашим условиям. Если вы ищете себя (как в og_my), каждый групповой узел будет отображаться только один раз; если вы не ищете себя, каждый узел группы отображается N раз, где N - количество других членов группы. Таким образом, группы, членом которых я уже являюсь, продолжают отображаться, пока есть хотя бы один другой участник.

У кого-нибудь есть способ обойти это?

Спасибо, Адриан

Ответы [ 2 ]

1 голос
/ 06 октября 2009

Возможно, вы не сможете достичь этого непосредственно в представлениях, так как он не поддерживает подзапросы. Мой SQL получился так:

SELECT node.nid AS nid, node.title AS node_title  FROM node node   LEFT JOIN og_uid og_uid ON node.nid = og_uid.nid  WHERE (node.type IN ('campaign','setting','system')) AND node.nid NOT IN (select nid from og_uid where uid = 1);

Говорят, что вы можете программно переслать результаты такого запроса в систему Views для их создания.

Может быть, специальная обработка аргумента Органические группы: Член группы, параметр Исключить аргумент?

Я также написал в d.o в надежде продолжить обсуждение вопроса.

0 голосов
/ 23 апреля 2012

Wild. OG Views Extra было доступно в течение d.o через три дня после первого пересмотра этого вопроса Я не использовал его, но выглядит так, как будто он может это сделать.

Так зачем устанавливать этот модуль? Если вам нужен более тонкий контроль. доступные опции пользователя:

  • Не участник группы
  • Член группы или администратор сайта
  • Только для членов группы
...