يفشل الحدث بصمت إذا تجاوز وصفه 1000 حرف

الملخص:

إذا تجاوز وصف الحدث 1000 أحرف، فيظهر فارغًا، أو يظهر وصف الحدث السابق.

السبب هو حد صارم في جدول discourse_post_event_events: description character varying(1000)

إعادة إنتاج #1

  • أنشئ حدثًا
  • اجعل وصف الحدث (النص الموجود بين [event] و [/event]) يتجاوز 1000 حرف
  • لن يظهر وصف الحدث في المشاركة المُعرضة

إعادة إنتاج #2

  • أنشئ حدثًا
  • اجعل وصف الحدث (النص الموجود بين [event] و [/event]) أقل من 1000 حرف
  • عدّل الحدث
  • اجعل وصف الحدث (النص الموجود بين [event] و [/event]) يتجاوز 1000 حرف
  • سيظهر وصف الحدث السابق في المشاركة المُعرضة

يُتيح هذا أيضًا تسميم نتائج البحث.

ذات صلة

يبدو أن الأمر نفسه ينطبق على حقلي url و location

المتوقع

أحد ما يلي:

أ) يجب ألا يكون لوصف الحدث حد معين
ب) يتم عرض تحذير واضح عندما يكون وصف الحدث طويلاً جداً
ج) يتم اقتطاع وصف الحدث أثناء العرض (بينما يُحتفظ بالنص الكامل في الماركداون)

6 إعجابات

شكرًا على هذا.

في رأيي، الخيار (ج) دون تحذير غير كافٍ أيضًا. إذا حصلت على تصويت، فأن الخيار (أ) هو أفضل حل.

إعجاب واحد (1)

تمت إعادة إنتاج المشكلة على أحدث إصدار، وتم اختبارها اليوم. أبلغ مستخدم عن مشكلة في عدم عرض بطاقات الأحداث، دون سبب واضح. تم حفظ الموضوع بشكل طبيعي، وكان ترميز الحدث (Event markup) صحيحًا في النص الخام للموضوع، لكن لم تظهر أي بطاقة حدث في الموضوع أو في أي مكان آخر. لم يكن هناك أي تحذير من محرر النص، ولا خطأ في الحفظ، ولا خطأ في وحدة التحكم بالمتصفح، ولا أي إدخال ذي صلة في /logs.

أؤيد الخيار (ب) وهو ظهور تحذير واضح أو خطأ في التحقق من الصحة.

وبينما نحن هنا، فإن السلوك نفسه تمامًا (فشل صامت في عرض البطاقة) يحدث أيضًا إذا تعذّر تحليل ترميز الحدث بشكل صحيح لأي سبب آخر. في الحالة التي كنت أبحث فيها قبل بضعة أشهر، كان المستخدم قد أعدّ ترميز الحدث بدقة في Word ثم نسخه ولصقه في Discourse، مما أدى إلى إضافة علامات اقتباس ذكية (Smart Quotes) تلقائيًا حول عناصر data=، مما أثار الفوضى المتوقعة.

لذلك نعم، سيكون من الرائع جدًا وجود خطأ مرئي، حتى لو كان في وحدة التحكم فقط.

إعجابَين (2)