متى تستخدم هذه الدوال؟
هذه الدوال مدعومة في سياق تعبير النموذج العادي. وهي تكيّف النموذج ولا تمنح صلاحية ولا تحل محل التفويض على الخادم. تحظر النماذج غير المتصلة دوال البيانات والصلاحيات.طريقة الكتابة
استخدم الدالة بصيغةhasVerb("review"). لا تكون كل دالة متاحة في كل مكان: دوال التحقق ودوال النموذج ودوال قالب المستند لها عقود سياق مختلفة. لا تفترض أن اقتراح المحرر يعني أن الدالة مدعومة وقت التشغيل.
مرجع الدوال الكامل
f._in
بديل صريح لـ f.in يبني مرشح إدراج لقيمة ضمن قائمة.
التوقيع: f._in(field, values)
مثال:
f.adj
يبني مرشحاً لمديين متجاورين دون تداخل.
التوقيع: f.adj(field, range)
مثال:
f.and
يبني مرشح بحث مركباً لا يطابق إلا السجلات التي تحقق كل المرشحات الفرعية. مرره حصراً إلى getRecords.
التوقيع: f.and(...filters)
مثال:
f.cd
يبني مرشح احتواء الحقل ضمن مجموعة القيم المعطاة.
التوقيع: f.cd(field, values)
مثال:
f.cs
يبني مرشح احتواء لكل القيم داخل حقل قائمة.
التوقيع: f.cs(field, values)
مثال:
f.eq
يبني مرشح مساواة لحقل وسجل قيمة محددة.
التوقيع: f.eq(field, value)
مثال:
f.fts
يبني مرشح بحث نصي كامل.
التوقيع: f.fts(field, query)
مثال:
f.gt
يبني مرشحاً للقيم الأكبر من قيمة محددة.
التوقيع: f.gt(field, value)
مثال:
f.gte
يبني مرشحاً للقيم الأكبر من أو المساوية لقيمة محددة.
التوقيع: f.gte(field, value)
مثال:
f.ilike
يبني مرشح نمط غير حساس لحالة الأحرف.
التوقيع: f.ilike(field, pattern)
مثال:
f.imatch
يبني مرشح مطابقة تعبير نمطي غير حساس لحالة الأحرف.
التوقيع: f.imatch(field, pattern)
مثال:
f.in
يبني مرشح إدراج لقيمة ضمن قائمة. استخدم f._in إذا كان الاسم سيجعل التعبير المعقد أقل وضوحاً.
التوقيع: f.in(field, values)
مثال:
f.is
يبني مرشحاً على أسلوب قاعدة البيانات لقيمة null أو لحالة منطقية.
التوقيع: f.is(field, value)
مثال:
f.isdistinct
يبني مرشحاً يتطلب قيمة مميزة عن القيمة المعطاة.
التوقيع: f.isdistinct(field, value)
مثال:
f.like
يبني مرشح نمط حساساً لحالة الأحرف.
التوقيع: f.like(field, pattern)
مثال:
f.lt
يبني مرشحاً للقيم الأصغر من قيمة محددة.
التوقيع: f.lt(field, value)
مثال:
f.lte
يبني مرشحاً للقيم الأصغر من أو المساوية لقيمة محددة.
التوقيع: f.lte(field, value)
مثال:
f.match
يبني مرشح مطابقة تعبير نمطي حساساً لحالة الأحرف.
التوقيع: f.match(field, pattern)
مثال:
f.neq
يبني مرشح عدم مساواة لحقل وسجل قيمة محددة.
التوقيع: f.neq(field, value)
مثال:
f.nilike
يبني مرشح نفي لنمط غير حساس لحالة الأحرف.
التوقيع: f.nilike(field, pattern)
مثال:
f.nin
يبني مرشحاً ينفي إدراج القيمة ضمن القائمة.
التوقيع: f.nin(field, values)
مثال:
f.nis
يبني صيغة النفي للمرشح f.is.
التوقيع: f.nis(field, value)
مثال:
f.nisdistinct
يبني مرشحاً ينفي شرط القيمة المميزة.
التوقيع: f.nisdistinct(field, value)
مثال:
f.nlike
يبني مرشح نفي لنمط حساس لحالة الأحرف.
التوقيع: f.nlike(field, pattern)
مثال:
f.nxl
يبني مرشحاً لمدى لا يمتد إلى يسار المدى المعطى.
التوقيع: f.nxl(field, range)
مثال:
f.nxr
يبني مرشحاً لمدى لا يمتد إلى يمين المدى المعطى.
التوقيع: f.nxr(field, range)
مثال:
f.or
يبني مرشح بحث مركباً يطابق السجل عند تحقق أي مرشح فرعي. مرره حصراً إلى getRecords.
التوقيع: f.or(...filters)
مثال:
f.ov
يبني مرشح تداخل لمجال أو مجموعة قيم.
التوقيع: f.ov(field, values)
مثال:
f.ov_array
يبني مرشح تداخل بين حقلي قوائم.
التوقيع: f.ov_array(field, values)
مثال:
f.phfts
يبني مرشح بحث نصي كامل يطابق عبارة متصلة.
التوقيع: f.phfts(field, query)
مثال:
f.plfts
يبني مرشح بحث نصي كامل بصيغة عبارة عادية.
التوقيع: f.plfts(field, query)
مثال:
f.sl
يبني مرشحاً لمدى يقع بالكامل إلى يسار المدى المعطى.
التوقيع: f.sl(field, range)
مثال:
f.sr
يبني مرشحاً لمدى يقع بالكامل إلى يمين المدى المعطى.
التوقيع: f.sr(field, range)
مثال:
f.wfts
يبني مرشح بحث نصي كامل بصيغة الويب، بما فيها عوامل البحث المدعومة.
التوقيع: f.wfts(field, query)
مثال:
getRecord
يبحث عن سجل واحد لتعبير نموذج. قد ينتج عن غياب العميل أو مهلة البحث قيمة فارغة أو شبيهة بـ null؛ لا تستخدمه لإثبات الصلاحية.
التوقيع: getRecord(qualifiedRecordId)
مثال:
getRecords
يبحث عن سجلات لتعبير نموذج باستخدام مرشح مبني بـ f.*. لا تعرض نتائج البحث في مخرج عام ما لم يراجع مالك الخدمة نطاق البيانات.
التوقيع: getRecords(entityKey, filters)
مثال:
hasAnyScope
يتحقق من احتواء جلسة النموذج الحالية على أي نطاق من قائمة النطاقات المعطاة.
التوقيع: hasAnyScope(scopes)
مثال:
hasScope
يتحقق من احتواء جلسة النموذج الحالية على نطاق واحد بالاسم المعطى.
التوقيع: hasScope(scope)
مثال:
hasVerb
يتحقق من أفعال جلسة النموذج للعضو الحالي. تعيد المعالجة على الخادم true، لذلك لا تمثل وسيلة تفويض من جهة الخادم.
التوقيع: hasVerb(verb)
مثال:
hasVerbOnRecord
يتحقق من الفعل الممنوح لعضو النموذج الحالي على سجل مؤهل ونطاقاته. استخدمه لتكييف تجربة النموذج فقط، وليس لفرض التفويض.
التوقيع: hasVerbOnRecord(verb, qualifiedRecordId)
مثال:
isWeekday
يتحقق مما إذا كان التاريخ يوم عمل، مع استخدام بيانات الوردية الاختيارية نفسها والرجوع إلى السبت والأحد عند غيابها.
التوقيع: isWeekday(date, entityId?)
مثال:
isWeekend
يتحقق مما إذا كان التاريخ غير يوم عمل للكيان المرتبط بالوردية اختيارياً. عند غياب بيانات الوردية، يرجع إلى السبت والأحد.
التوقيع: isWeekend(date, entityId?)
مثال:
قائمة تحقق قبل النشر
- ابدأ بقيمة معروفة وتحقق من النتيجة المتوقعة.
- تعامل صراحةً مع القيم الفارغة وnull والقوائم الفارغة.
- لا تضع أسراراً أو رموز وصول أو بيانات شخصية حساسة داخل تعبير.
- راجع سياقات وتوافر التعبيرات قبل نسخ تعبير بين ميزتين.


