أحاول بناء “محرك توصيات” لمستخدمي عبر واجهة برمجة تطبيقات Discourse تسرد جميع المواضيع التي لم يقرأها مستخدم معين بعد حسب العلامة/الفئة. لقد تصفحت الاستعلامات الحالية المختلفة، ولكن ليس لدي فكرة عن مكان البدء. هل يمكنك المساعدة؟ شكراً!
إعجابَين (2)
@simon هل يمكنك إضافة العلامة هنا من فضلك؟
إعجاب واحد (1)
هل قمت بفحص الجدول post_timings؟
شيء كهذا سيُدرج المواضيع في فئة لم يدخلها المستخدم أو يقرأ أي منشور فيها مطلقًا. إنه ليس بالضبط ما تريده ولكنه نقطة انطلاق.
-- [params]
-- user_id :user
-- category_id :category
SELECT t.id, t.title
FROM
topics AS t
WHERE
category_id = :category
AND user_id != :user
AND last_post_user_id != :user
AND deleted_at IS NULL
AND NOT EXISTS(SELECT 1 FROM post_timings AS p WHERE p.topic_id = t.id AND p.user_id = :user)
لاحظ أنه في “محرك التوصيات” الخاص بك، ستحتاج على الأرجح إلى التحقق مما إذا كان المستخدم يمكنه رؤية الموضوع قبل التوصية به.
إعجابَين (2)