كيفية البحث في firebase باستخدام فلاتر || How to search in firebase using filters
عندما يكون لديك بيانات كبيره نسبيا في ال firestore لديك تحتاج ان تقوم بإضافة امكانية لعمل search وفي هذا الدرس سوف نشرح كيف تقوم بإضافة بحث بداخل ال firebase بدون مشاكل , وتعد عملية البحث من اكثر الخصائص التي يبحث عنها الكثير ونحن في هذه السلسلة نشرح لكم كل ما يتعلق بال firebase بحيث تكون قادر على بناء تطبيق كامل بدون مشاكل بإستخدام firebase فقط , وتعد عملية الsearch بسيطة جدا مثل عرض البيانات وغيرها .
يمكنك إنشاء تطبيقات عبر الأنظمة الأساسية باستخدام Flutter التي تعمل على iOS و Android وسطح المكتب ومتصفحات الويب والمزيد من الأنظمة الأساسية. باستخدام Flutter ، ما عليك سوى الاحتفاظ بقاعدة شفرة عامة واحدة بدلاً من الحاجة إلى إنشاء تطبيقات أصلية منفصلة لكل نظام أساسي. تم إنشاء Flutter وصيانته بواسطة Google وهو مفتوح المصدر.
How to search in firebase by using flutter
يمكنك استخدام الكود التالي وهو المسؤول عن عملية الsearch بكل بساطة لديك list فارغه سوف نقوم بملئ ال list بناء على المدخلات التي يدخلها المستخدم وللبحث بداخل array سوف تسخدم whare ومعه arrayContains حتى تتمكن من البحث بالنص وبعدها سوف تحصل على البيانات وتقوم بوضعها بداخل ال model واخيرا تضعها في ال list .
cubit.dart
List<ProductModel> searchList = [];
void getSearchProductFirebase({required String text}) async {
emit(SearchLoadingState());
await FirebaseFirestore.instance
.collection('products')
.where("search", arrayContains: text)
.get()
.then((QuerySnapshot querySnapshot) async {
searchList.clear();
for (var doc in querySnapshot.docs) {
Map<String, dynamic> json = doc.data() as Map<String, dynamic>;
ProductModel productSearch = ProductModel.fromMap(json);
searchList.add(productSearch);
}
emit(SearchSuccessState());
});
}
Storing data in firebase during the search process
بالنسبة لشكل تخزين البيانات على ال firebase سوف تكون بهذا التنسيق حاول ان تضع حرف لكل كلمة وبعدها تزيد الحروف char by char حتى يتم تغيير البيانات بناء على مدخلات المستخدم .
android sdk manager تحميل flutter developers applications create app android android studio mac