بحث API '/u/search' والرموز البدئية أو الميزات؟

أحاول استخدام بحث Discourse عبر /u/search/…، وما لم أكن مخطئًا، فإنه لا يدعم الرموز الوهمية (wildcards) ولا يفتقر افتراضيًا إلى المطابقات الجزئية داخل الأسماء. على سبيل المثال، لدي المستخدمون التاليون:

  • andrew
  • marian
  • mark

إذا بحثت عن ‘an’، أحصل فقط على ‘andrew’.
إذا بحثت عن ‘ma’، أحصل على كل من ‘mark’ و ‘marian’.

هل توجد ميزات للرموز الوهمية تسمح بالبحث عن ‘an’ للحصول على كل من ‘andrew’ و ‘marian’؟

استعلامي الكامل في JS هو…

this.DiscourseAPI.get(`u/search/users.json?term=${term}&include_groups=false&include_mentionable_groups=false&include_messageable_groups=false&topic_allowed_users=false`

حيث يتم استبدال {term} بسلسلة بحث المستخدم (مثل ‘an’ أو ‘ma’).

سنحتاج إلى ثلاثيات (trigrams) للقيام بذلك بكفاءة، ففي الوقت الحالي نستخدم البحث النصي الكامل.

تم وضع هذا القيد لأننا لا نريد فحص جدول يحتوي على ملايين الصفوف المحتملة.