الأدلة

ما هو CRUD؟ الإنشاء والقراءة والتحديث والحذف بشرح مبسط

CRUD تعني الإنشاء والقراءة والتحديث والحذف (create, read, update, delete)، وهي العمليات الأربع الأساسية التي يقوم بها التطبيق على البيانات المخزّنة. إضافة عميل جديد هي الإنشاء، وعرض قائمة العملاء هو القراءة، وتغيير رقم هاتفه هو التحديث، وحذفه هو الحذف. معظم تطبيقات الأعمال، من أنظمة إدارة العملاء وأنظمة الحجز ومتتبعات المخزون ولوحات الإدارة، هي في جوهرها CRUD مع قواعد وواجهة جيدة فوقها.

لماذا يهم CRUD عند البناء بالذكاء الاصطناعي؟

CRUD هي المفردات التي تحوّل فكرة تطبيق غامضة إلى طلب دقيق. عبارة «تطبيق لإدارة الموردين» تترك الذكاء الاصطناعي يخمّن. أما «أنشئ الموردين وأدرجهم وعدّلهم واحذفهم، بهذه الحقول» فتخبره بدقة بالشاشات وعمليات قاعدة البيانات ومسارات الخادم التي يجب بناؤها.

كما أنها تعطيك قائمة فحص للاختبار. لكل نوع من السجلات في تطبيقك، يمكنك طرح أربعة أسئلة: هل يمكنني إضافة سجل، ورؤيته، وتعديله، وحذفه؟ وهل يستطيع الأشخاص المناسبون وحدهم تنفيذ كل منها؟ عدد غير قليل من التطبيقات المبنية بالذكاء الاصطناعي يسمح بالإنشاء لكن لا يسمح بالتعديل، أو يسمح لأي شخص بالحذف.

تشبيه من الحياة اليومية: صندوق بطاقات الوصفات

تخيّل صندوقاً من بطاقات الوصفات على رف المطبخ.

  • الإنشاء: تكتب بطاقة جديدة وتضعها في الصندوق.
  • القراءة: تقلّب البطاقات، أو تسحب بطاقة وصفة اللازانيا.
  • التحديث: تشطب «200 غرام جبن» وتكتب «250 غراماً».
  • الحذف: تُخرج بطاقة وترميها.

الآن أضف القواعد: الطباخ الرئيسي وحده يحق له رمي البطاقات، ويجب أن تحمل كل بطاقة عنواناً، ولا يمكن لأحد أن يضع بطاقتين بالاسم نفسه. هذا تطبيق CRUD مع تحقق من المدخلات وصلاحيات، وهذا ما تكونه معظم التطبيقات الحقيقية.

كيف تظهر CRUD في كل طبقة؟

تظهر كل عملية في الشاشة وفي الخادم وفي قاعدة البيانات. رؤيتها جنباً إلى جنب تفسر الكثير عن كيفية بناء التطبيقات.

العمليةعلى الشاشةطلب API (REST)SQL في قاعدة البيانات
الإنشاءزر "جديد" ونموذجPOST /api/suppliersINSERT
القراءةقائمة مع بحث وفلاتر؛ وصفحة تفاصيلGET /api/suppliers و GET /api/suppliers/42SELECT
التحديثنموذج "تعديل" أو تحرير مباشرPUT أو PATCH /api/suppliers/42UPDATE
الحذفزر "حذف" مع تأكيدDELETE /api/suppliers/42DELETE (أو وضع علامة "محذوف" على الصف)

الشاشة هي الواجهة الأمامية (frontend)، وطلب API هو طريقة تواصل الواجهة الأمامية مع الخلفية (backend)، وSQL هو طريقة تواصل الخلفية مع قاعدة البيانات. إذا كانت هذه الكلمات جديدة عليك، فانظر ما هو API وما هي قاعدة البيانات.

مثال عملي: متتبع إعارة معدات

تقوم إدارة الوسائط في مدرسة بإعارة كاميرات وميكروفونات للطلاب، وتفقد باستمرار تتبّع مكانها. تريد تطبيقاً بسيطاً.

السجلات. نوعان من الأشياء: المعدات (الاسم، النوع، الرقم التسلسلي، الحالة) والإعارات (أي معدة، أي طالب، تاريخ الإخراج، تاريخ الإرجاع المتوقع، تاريخ الإرجاع الفعلي).

CRUD للمعدات:

  • الإنشاء: يضيف الموظفون كاميرا جديدة مع رقمها التسلسلي. القاعدة: الأرقام التسلسلية يجب أن تكون فريدة.
  • القراءة: قائمة بكل المعدات قابلة للتصفية حسب النوع وحسب "متاح الآن"؛ وصفحة تفاصيل تعرض سجل إعارات قطعة واحدة.
  • التحديث: تغيير الحالة إلى "يحتاج إصلاحاً".
  • الحذف: عادةً ليس حذفاً حقيقياً. إذا حُذفت كاميرا لها 30 إعارة سابقة، فستفقد سجلات الإعارة ارتباطها. بدلاً من ذلك، تُعلَّم بـ"متقاعدة" فتختفي من قائمة المتاح، لكن سجلها يبقى. هذا ما يسمى الحذف الناعم (soft delete).

CRUD للإعارات:

  • الإنشاء: تسجيل إخراج معدة لطالب. القاعدة: لا يمكن إخراج معدة مُعارة أصلاً.
  • القراءة: قائمة "الإعارات المتأخرة"، وهي قائمة يكون فيها تاريخ الإرجاع قد مضى ولا يوجد تاريخ إرجاع مسجّل.
  • التحديث: تسجيل تاريخ الإرجاع عند عودة المعدة.
  • الحذف: للموظفين فقط، لإعارات أُدخلت بالخطأ.

الصلاحيات. يستطيع الطلاب قراءة ما هو متاح؛ ولا يستطيع إلا الموظفون الإنشاء أو التحديث أو الحذف. تُنفَّذ هذه الفحوصات على الخادم، لا بإخفاء الأزرار فقط.

هذا كل التطبيق. الأجزاء المثيرة للاهتمام، مثل منع الإعارة المزدوجة، وقائمة المتأخرات، وسجل كل قطعة، هي قواعد واستعلامات فوق CRUD بسيط.

مصطلحات أساسية

  • السجل (الصف): عنصر واحد، مثل مورد واحد أو إعارة واحدة.
  • الكيان (Entity) / المورد (Resource): نوع من السجلات، مثل "الموردون". عادةً ما يحصل كل كيان على جدول خاص ومجموعة شاشات CRUD خاصة به.
  • التحقق (Validation): فحوصات على المدخلات، كالحقول المطلوبة، والبريد الإلكتروني الصالح، والكمية الموجبة. افعله في النموذج لتسهيل الاستخدام، وكذلك على الخادم للأمان.
  • الحذف الناعم (Soft delete): وضع علامة "محذوف" أو "مؤرشف" على السجل بدل إزالته، حتى تبقى السجلات والروابط.
  • الترقيم (Pagination): عرض القائمة الطويلة صفحة بصفحة، حتى يبقى التطبيق سريعاً.
  • سجل التدقيق (Audit log): سجل بمن أنشأ أو عدّل أو حذف ماذا، ومتى.
  • لوحة الإدارة (Admin panel): مجموعة شاشات CRUD يستخدمها الموظفون لإدارة بيانات التطبيق.

أخطاء ومفاهيم خاطئة شائعة

  • نسيان واحدة من العمليات الأربع. كثيراً ما تُشحن التطبيقات بالإنشاء والقراءة فقط دون تحديث، فكل خطأ مطبعي يعني الحذف وإعادة الإدخال. تحقق من العمليات الأربع لكل كيان.
  • عمليات حذف تكسر الأشياء. حذف عميل لديه فواتير قد يترك فواتير يتيمة أو يمحو السجل. قرّر لكل كيان: امنع الحذف، أو اعتمد الحذف الناعم، أو احذف السجلات المرتبطة أيضاً.
  • الصلاحيات في الواجهة فقط. إخفاء زر الحذف لا يمنع أحداً من إرسال طلب DELETE. يجب على الخادم أن يتحقق من هوية الطالب.
  • التحديث بالمعرّف دون التحقق من الملكية. إذا استطاع المستخدم A تعديل /api/notes/42 بتغيير رقم في الرابط، فقد يعدّل ملاحظة المستخدم B. كل تحديث وحذف يجب أن يؤكد أن السجل ينتمي لطالب العملية.
  • عدم وجود تأكيد عند الحذف. نقرة خاطئة واحدة لا يجب أن تدمر البيانات. اطلب خطوة تأكيد أو إمكانية التراجع.
  • «CRUD تعني بسيط، فلا يستحق البناء.» كثير من المنتجات القيّمة تطبيقات CRUD تناسب سير العمل أكثر من أداة عامة.

ماذا تطلب من أداة البناء بالذكاء الاصطناعي؟

استخدم هذا النمط لكل كيان، واحداً تلو الآخر:

أنشئ ميزة الموردين مع القائمة والإنشاء والتعديل والحذف. الحقول: الاسم (مطلوب)، والبريد الإلكتروني للتواصل (بريد صالح)، والهاتف، والفئة (واحدة من: غذاء، تغليف، تنظيف)، والملاحظات. عرض القائمة مع بحث بالاسم وتصفية بالفئة، 20 في الصفحة. اطلب التأكيد قبل الحذف؛ وإذا كان للمورد طلبات، فأرشفه بدلاً من حذفه. يستطيع الموظفون المسجلون دخولهم وحدهم الإنشاء أو التعديل أو الأرشفة، وطبّق ذلك على الخادم.

ثم اختبر العمليات الأربع كلها، كمستخدم مسموح له، وكشخص لا يحق له الوصول. وعندما يعمل كيان واحد، أضف الذي يليه. يوضح كيف تبني أداة داخلية كيف تتحول شاشات CRUD إلى تطبيق إدارة كامل، ويشرح ما هو Postgres قاعدة البيانات التي تعتمد عليها معظم هذه التطبيقات.

تطبيقات CRUD في Mythex

تطبيقات CRUD من أكثر ما تجيده أدوات بناء التطبيقات بالذكاء الاصطناعي، وMythex ليس استثناءً. اطلب في المحادثة الكيان وحقوله، فيُلحق Mythex بالمشروع قاعدة بيانات Postgres، وينشئ الجدول، ويبني شاشات القائمة والنموذج والتفاصيل في معاينة حية؛ ثم يمكنك تشغيل /test للتحقق من التدفق. تحتوي الوثائق على وصفة تطبيق CRUD مع طلب جاهز للبدء، ومنشئ الأدوات الداخلية وقوالب لوحات المعلومات مكانان جيدان للبدء.

الأسئلة

ماذا تعني CRUD؟

CRUD تعني الإنشاء (Create) والقراءة (Read) والتحديث (Update) والحذف (Delete): إضافة سجل جديد، وعرض السجلات، وتعديل سجل، وإزالة سجل. تقريباً كل تطبيق يخزن البيانات مبني على هذه العمليات الأربع.

ما هو تطبيق CRUD؟

تطبيق CRUD هو تطبيق مهمته الأساسية إدارة السجلات عبر النماذج والقوائم وصفحات التفاصيل، مثل نظام إدارة علاقات العملاء (CRM) أو متتبع المخزون أو إدارة الحجوزات أو لوحة إدارة لوظائف التوظيف. معظم الأدوات الداخلية ولوحات الإدارة هي تطبيقات CRUD.

كيف ترتبط CRUD بواجهات REST API؟

في واجهة REST النموذجية، يستخدم الإنشاء طلب POST، والقراءة طلب GET، والتحديث طلب PUT أو PATCH، والحذف طلب DELETE. ثم يُنفّذ الخادم عملية قاعدة البيانات المقابلة: INSERT أو SELECT أو UPDATE أو DELETE.

هل تطبيق CRUD بسيط أكثر من اللازم ليكون ذا قيمة؟

لا. كثير من البرمجيات التجارية المفيدة هي تطبيقات CRUD مع قواعد جيدة وصلاحيات وتقارير فوقها. القيمة في نمذجة البيانات بشكل جيد وتناسب سير العمل، لا في تقنية غير عادية.

Mythex · Pricing · ابنِ أي شيء بالذكاء الاصطناعي · قوالب المواقع والتطبيقات · مقارنات Mythex · مصطلحات بناء التطبيقات بالذكاء الاصطناعي · أدوات مجانية لبناء التطبيقات بالذكاء الاصطناعي · English

English አማርኛ Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)