هل يمكن لأي شخص التفكير في طريقة لمنح شارة مخصصة تلقائيًا عند نشر منشور يحتوي على معادلة باستخدام إضافة discourse-math؟
ليس لدي أي فكرة عن كيفية البدء في هذا الأمر
هل يمكن لأي شخص التفكير في طريقة لمنح شارة مخصصة تلقائيًا عند نشر منشور يحتوي على معادلة باستخدام إضافة discourse-math؟
ليس لدي أي فكرة عن كيفية البدء في هذا الأمر
مرحبًا @agf1997
أتفق على أن إضافة الرياضيات في Discourse مصممة بشكل جيد وتُعد إضافة رائعة لموقعك.
إحدى الطرق الممكنة هي دفع رسوم لمطور إضافات Discourse لتعديل إضافة الرياضيات بحيث تقوم بتحديث حقل مخصص في قاعدة البيانات عندما يستخدم عضو المنتدى الإضافة.
بعد ذلك، يمكنك إنشاء استعلام قاعدة بيانات بسيط (في منطقة إدارة الشارات) لإصدار الشارات.
أتمنى أن يكون هذا مفيدًا.
بالتأكيد، هذه ليست ميزة حرجة. كنت أبحث فقط عن طريقة بسيطة لتسليط الضوء على الأشخاص الذين يستخدمون ميزة تنسيق المعادلات الرياضية لتشجيع الآخرين على استخدامها أيضًا.
مرحبًا @agf1997
ستحتاج إلى كود إضافة للقيام بذلك، كما ذكرت.
هذا يعني أن لديك خيارين:
أيا كان المسار الذي تقرر اتباعه، ستحتاج إلى تعديل أو توسيع إضافة الرياضيات لتحديث حقل مخصص في قاعدة البيانات عندما يستخدم عضو المنتدى الإضافة.
أتمنى أن يكون هذا مفيدًا.
نعم، يمكنك الحصول على شارات لمنشورات الرياضيات الناجحة دون الحاجة إلى تعديل الإضافة.
أولاً، ستحتاج إلى تمكين لا يمكن تعديل SQL الخاص بالشارات افتراضيًا على موقعك.
بعد ذلك، قم بإنشاء شارة جديدة تُفعّل بناءً على الاستعلام التالي:
SELECT user_id, MIN(id) AS post_id, current_timestamp AS granted_at
FROM badge_posts
WHERE cooked LIKE '%<span class="math">%' AND (:backfill OR id IN (:post_ids) )
GROUP BY user_id
مرحبًا @Falco
استعلام الشارة هذا رائع حقًا.
سؤال:
هل لديك قائمة بجميع رموز Discourse :symbols التي يمكن استخدامها في استعلام شارة للمساعدة في التفعيل؟
السبب في سؤالي هو أنني أرى أنك استخدمت :backfill و :post_id, وعندما ألقي نظرة على هذا الرابط، أرى رموز Ruby أخرى مستخدمة:
هل يوجد مرجع مختصر لرموز Ruby الخاصة بـ Discourse التي يمكن استخدامها في استعلام شارة؟
لقد وجدت هذا، المتعلق بمحفزات الشارات (بعد مشاركتك أعلاه)، وكان مفيدًا جدًا:
في مقال Discourse ذلك، تم ذكر هذه أدوات التفعيل المساعدة:
هل هذه الثلاثة هي “الكل”؟
شكرًا جزيلاً على مساعدتك!
@Falco رائع! سؤال سريع .. هل يجب أن يعمل هذا على المنشورات السابقة؟ عندما أنقر على “معاينة الشارات الممنوحة” أحصل على “لا توجد شارات لتعيينها.”
عند النقر على “معاينة مع خطة الاستعلام” أحصل على
GroupAggregate (cost=2021.68..2021.70 rows=1 width=16)
Group Key: p.user_id
-> Sort (cost=2021.68..2021.68 rows=1 width=8)
Sort Key: p.user_id
-> Nested Loop (cost=0.28..2021.67 rows=1 width=8)
Join Filter: (t.category_id = c.id)
-> Nested Loop (cost=0.28..2017.97 rows=1 width=12)
-> Seq Scan on posts p (cost=0.00..2009.66 rows=1 width=12)
Filter: ((deleted_at IS NULL) AND (cooked ~~ '%<span class="math">%'::text) AND (post_type = ANY ('{1,2,3}'::integer[])))
-> Index Scan using topics_pkey on topics t (cost=0.28..8.30 rows=1 width=8)
Index Cond: (id = p.topic_id)
Filter: ((deleted_at IS NULL) AND visible)
-> Seq Scan on categories c (cost=0.00..3.35 rows=28 width=4)
Filter: (allow_badges AND (NOT read_restricted))