الطريقة الصحيحة لتعيين الملخص وإخفاء الفئة من الأحدث

مرحبًا،

بصفتي مديرًا للمنتدى، أود أن يكون جميع المستخدمين مشتركين في فئات معينة مع تفعيل خيار القائمة البريدية.

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

هل أنا محق في أنني يمكنني إجراء بعض عمليات الإدراج لتحقيق ذلك؟

في السابق، حاولت تعيين بعض الفئات على أنها “مدرجة في القائمة البريدية” للتأكد من أن الملخص سيحتوي فقط على تلك الفئات، لكنني لم أكن على صواب — هذا الإعداد لا يتحكم في محتوى الملخص.

ربما تكون المنطقية مختلفة؟ الهدف هو:

  • إجبار المستخدمين الجدد على استلام ملخص من فئات معينة (حسنًا، دعهم يعدلونه بأنفسهم لاحقًا)
  • عدم عرض بعض الفئات في صفحة “الأحدث” الخاصة بهم

وجدت موضوعًا Viewing a list of users who are watching a category قريبًا من حالتي. لكنني لم أكن متأكدًا من رفعه مرة أخرى بعد خمس سنوات.

لماذا لا تستخدم هذه الإعدادات

لست متأكدًا مما إذا كان هذا يمكن أن يساعد. أنا أبحث عن طريقة مجمعة لتطبيق ذلك على 100 مستخدم آخر.

إذا اخترت ذلك، ستظهر نافذة تسأل عما إذا كنت ترغب في تغييره للجميع أم فقط للمقبل من الوقت. :+1:

أود مشاركة حلّي.

نقرت على الإعدادات المطلوبة في واجهة المستخدم (كتم ومتابعة بعض الفئات) كما ذكر غافين:

ثم اتصلت بقاعدة البيانات لتحديد معرفات الفئات والمستخدمين. الجداول: category_users و users.

فلتت الإعدادات لنفسي (لـ user_id=5) كما هو موضح في الصورة أدناه:

بعد ذلك، أريد تطبيق نفس الإعدادات على مستخدمين آخرين بمعرفي 33 و34. بوضوح، أحتاج إلى إضافة الأسطر المناسبة إلى جدول category_users.

مثال:

  • هناك 6 فئات: معرفاتها 1، 2، 15، 17، 19 و24.
  • فئات مكتملة: 15 و17.
  • متابعة المنشور الأول في الفئات 1، 2 و24.
  • متابعة فئة واحدة: 19.

أولاً، أنشأت سكربتًا يدرج جميع الفئات المحددة في قسم الكتم (notification_level=0):

INSERT INTO 
	"category_users" 
	("category_id", "user_id", "notification_level", "last_seen_at") 
VALUES
(24, 34, 0, NULL),
(2,  34, 0, NULL),
(1,  34, 0, NULL),
(19, 34, 0, NULL),
(15, 34, 0, NULL),
(17, 34, 0, NULL),

(24, 33, 0, NULL),
(2,  33, 0, NULL),
(1,  33, 0, NULL),
(19, 33, 0, NULL),
(15, 33, 0, NULL),
(17, 33, 0, NULL);

يمكنك إضافة ما يصل إلى 1000 سطر دفعة واحدة.

بعد ذلك، قمت بتحديث الصفوف للفئات المتابعة والمتابعة للمنشور الأول:

-- متابعة المنشور الأول
UPDATE "public"."category_users" SET "notification_level"='4' WHERE  "category_id" in (1,2,24);
-- متابعة
UPDATE "public"."category_users" SET "notification_level"='2' WHERE  "category_id"=19;

بعد ذلك، يتم تحديث إعدادات المستخدم. تُخفى الفئات المكتملة من الصفحة الرئيسية ومن أحدث المواضيع.

صورة

أخبرني إذا كانت هناك طريقة أخرى بسيطة لتعديل إعدادات المستخدمين دفعة واحدة فيما يتعلق بالفئات المكتملة أو المتابعة.