Drupal OG المشاهدات: لا يمكن إنشاء عرض لجميع المجموعات التي أنا غير معروف حاليا

StackOverflow https://stackoverflow.com/questions/1523658

سؤال

(نشر أيضا كما http://drupal.org/node/596860.)

أرغب في إنشاء طريقة عرض تظهر فقط تلك المجموعات التي أناها ليس بالفعل عضو (أو عضو في انتظار). ومع ذلك، فإن الطريقة الواضحة للقيام بذلك (خذ عرض OG_MY وتغيير المرشح "المجموعات العضوية: عضو المجموعة" لا يعمل.

السبب هو أن استعلام SQL بإرجاع صف واحد بشكل أساسي لكل مستخدم في المجموعة التي تطابق ظروفك. إذا كنت تبحث عن نفسك (كما هو الحال في OG_MY)، فستظهر كل عقدة مجموعة مرة واحدة فقط؛ إذا كنت لا تبحث عن نفسك، فإن كل عقدة مجموعة تظهر ن مرات، حيث ن هو عدد أعضاء المجموعة الآخرين. وبالتالي فإن المجموعات التي أعمل بها بالفعل عضوا في عرضها طالما هناك عضو آخر على الأقل.

هل لدى أي شخص طريقة حول هذا؟

شكرا، أدريان

هل كانت مفيدة؟

المحلول

قد لا تتمكن من تحقيق ذلك في وجهات النظر مباشرة لأنها لا تدعم السطو. خرج بلدي 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);

يقال إنه يمكنك إعادة توجيه نتائج هذا الاستعلام برمجيا إلى نظام طرق العرض للحصول على موضوع.

ربما معالجة خاصة من المجموعات العضوية الوسيطة: عضو في مجموعة، خيار استبعاد الحجة؟

نشرت أيضا للقيام بأتمنى دفع محادثة القضية.

نصائح أخرى

بري. وجهات النظر OG إضافية تم توفيره ثلاثة بعد أيام من تنقيحك الأول لهذا السؤال. أنا لم أستخدمها، ولكن يبدو تماما كما قد تفعل ذلك.

فلماذا تثبيت هذه الوحدة؟ إذا كنت بحاجة إلى عنصر تحكم دقيقت. خيارات المستخدم المتاحة:

  • ليس عضو في المجموعة
  • مجموعة المجموعة أو موقع الموقع
  • عضو المجموعة فقط
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top