لماذا نحتاج إلى GET blocks وكيف تعمل؟
عندما تقوم بتطوير واجهة أمامية ، ستحتاج حتمًا إلى تشغيل BPs مختلفة على الواجهة الخلفية. من أجل تشغيل BP ، تحتاج إلى الاتصال بنقطة النهاية الخاصة بها. للقيام بذلك ، يقوم AppMaster بإنشاء كتلة طلب خادم لكل نقطة نهاية . تحتوي هذه الكتل على نفس حقول الإدخال والإخراج كنقطة النهاية المرتبطة وتعمل كطريقة لبدء تشغيلها.
يجب أن تقوم كتل GET ، وفقًا لمبادئ واجهة برمجة تطبيقات REST ، باسترداد بعض البيانات. في أغلب الأحيان ، تقوم كتل GET باسترداد البيانات من النموذج الموجود في قاعدة البيانات (الكل ، أو وفقًا لمعايير معينة).
مثل كل كتل طلب الخادم ، ترتبط كل كتلة GET بنقطة النهاية الخاصة بها. يتم عرض عنوان Url الخاص بنقطة النهاية في اسم الكتل.
ضع في اعتبارك أن AppMaster ينشئ نقاط نهاية أساسية تلقائيًا. ولكن يمكنك أيضًا إنشاء BPs ونقاط النهاية الخاصة بك ، وبالتالي كتل طلبات الخادم الخاصة بك.
حقول الإدخال والإخراج GET block
إدخال
- Endpoint ID - يحدد نقطة النهاية التي يجب على الكتلة الوصول إليها. يتم تعيين هذا الحقل تلقائيًا ؛
- _offset - يسمح بتحديد أي سجل ستتلقى الكتلة المعلومات منه ؛ تنسيق عدد صحيح
- _limit - عدد سجلات أحمال الكتلة. القيمة الافتراضية هي 25 ، والحد الأقصى في المرة الواحدة هو 500 ؛ تنسيق عدد صحيح
- _sort_order - قيمتان مناسبتان لهذا الحقل: asc - ترتيب فرز مباشر وترتيب desc - ترتيب عكسي ؛ تنسيق السلسلة
- _sort_by - يحدد مجال نموذج البيانات الذي سيتم فرز القائمة به ؛ تنسيق السلسلة
- Ids - قائمة معرفات السجلات. يسمح بالحصول على السجلات بواسطة معرف محدد ؛ تنسيق عدد صحيح الصفيف؛
- _search - البحث عن قيمة معينة في نموذج البيانات ؛ تنسيق السلسلة
- _search_exact - تمكين / تعطيل بحث المطابقة التامة ؛ تنسيق منطقي
- _ search_in - البحث حسب الحقول المحددة ؛ تنسيق سلسلة الصفيف.
دعنا نلقي نظرة فاحصة على الحقول المرتبطة بالبحث.
_search - للبحث عن التطابقات في نموذج البيانات والعثور عليها بغض النظر عن الحقل الذي توجد فيه القيمة.
على سبيل المثال ، دعنا نضبط حقل البحث على جون. إذا كانت قيمة حقل الاسم في نموذج البيانات ، لسجل واحد ، هي John ، وبالنسبة للآخر ، فإن قيمة حقل البريد الإلكتروني هي [email protected] ، فسيجد البحث كلا هذين السجلين.
_search_exact - يعني تمكين هذا الحقل أن النتائج ستتضمن السجلات التي تتطابق تمامًا مع الاستعلام.
طلب | _search_exact | نتيجة |
John | False | John, Johny, [email protected] |
John | True | John |
_search_in - هنا ، يمكنك تعيين الحقول التي يجب إجراء البحث فيها. على سبيل المثال ، إذا أردنا البحث عن طريق الأسماء فقط وعدم مراعاة الحالات التي يكون فيها الاسم جزءًا من البريد الإلكتروني ، فيمكننا استخدام _search_in والبحث فقط عن طريق حقل الاسم.
البحث في حقول نموذج البيانات
يتم استخدام هذه الحقول للبحث عن طريق نموذج البيانات. يتمثل الاختلاف الرئيسي بينها وبين حقول البحث في أنها يمكن أن تأخذ قيمًا مختلفة ، على عكس البحث ، الذي لا يقبل سوى تنسيق السلسلة.
انتاج |
- _success - نتائج البحث ؛ تنسيق منطقي
- _httpcode - رمز استجابة الطلب ؛ تنسيق عدد صحيح
- _error - نص خطأ ؛ تنسيق السلسلة
- Data - السجلات الواردة ؛ تنسيق نموذج الصفيف ؛
- Count - عدد الإدخالات المستلمة ؛ تنسيق عدد صحيح.
الحقل _with
يظهر في تلك الكتل حيث ينتقل الطلب إلى نماذج البيانات ذات الصلة. يسمح لك بالحصول على البيانات من نموذج البيانات الذي تم تقديم الطلب إليه ومن نماذج البيانات المرتبطة به.
لنلقِ نظرة على الحقل _with باستخدام مثال تطبيق يخزن قائمة بالكتب وفئاتها.
إنشاء نموذجين للبيانات: book category . في book نضيف حقل book_name ، وفي category نضيف الحقل category_name .
قم بإنشاء اتصال بينهما. دعنا نرسمها من فئة إلى كتاب ونحدد نوع العلاقة بـ has_many لأن فئة واحدة يمكن أن تشير إلى كتب مختلفة.
ضمن علامة تبويب تطبيق الويب ، قم بإعداد تحميل البيانات في جداول الكتاب والفئات وإضافة السجلات إلى هذه الجداول. لا يتم عرض البيانات المرتبطة حاليا في الجداول. لإصلاح هذا ، يلزم الحقل _with .
قم بإعداد هذا الحقل في Get block لكل جدول.
لنفتح تطبيقنا الآن ونتأكد من أن الاستعلام قيد التشغيل وأن البيانات الصحيحة تظهر في الجدول.