إنشاء نوع مستند (DocType)
إنشاء نوع مستند
نوع المستند (DocType) هو المكافئ للنموذج (Model) في أُطُر العمل الأخرى. فهو لا يحدد الخصائص فحسب، بل يُعَرِّف أيضًا سلوك النموذج.
تفعيل وضع المطور
قبل أن نتمكن من إنشاء أنواع المستندات، نحتاج إلى تفعيل وضع المطور على الـ Bench الخاص بنا. سيؤدي هذا إلى تمكين إنشاء التعليمات البرمجية النموذجية عند إنشاء أنواع المستندات، ويمكننا تتبعها في التحكم بالإصدارات مع تطبيقنا .
- انتقل إلى طرفيتك وأوقف خادم الـ Bench إذا كان يعمل بالفعل.
- من دليل
frappe-bench، قم بتشغيل الأمر التالي :bench set-config -g developer_mode true bench start - قد تحتاج أيضًا إلى مسح ذاكرة التخزين المؤقت للتأكد من تفعيل الإعداد :
> ملاحظة مهمة: تأكد من إضافة سطرbench --site {اسم_الموقع} clear-cache"developer_mode": 1إلى ملفsite_config.jsonالصحيح للموقع الذي تعمل عليه، وليس موقعًا آخر .
عملية إنشاء نوع المستند
- في واجهة Desk، انتقل إلى قائمة أنواع المستندات باستخدام شريط البحث (Awesomebar).
- انقر على جديد لإنشاء أول نوع مستند خاص بنا، وسنسميه Article.
- أدخل الاسم كـ
Article. - اختر Library Management في حقل الوحدة النمطية.
- أضف الحقول التالية في جدول الحقول (Fields table) :
- Article Name (نوع Data، إلزامي Mandatory)
- Image (نوع Attach Image)
- Author (نوع Data)
- Description (نوع Text Editor)
- ISBN (نوع Data)
- Status (نوع Select) - أدخل خيارين:
IssuedثمAvailable. - Publisher (نوع Data)
تلميح مهم: عند تحديد خصائص نوع المستند، تأكد من إلغاء تحديد خانة الاختيار 'مخصص؟' (Custom?). إذا كانت هذه الخانة مقفلة ولا يمكن التعديل عليها، فهذا يعني أن وضع المطور غير مفعّل بشكل صحيح . يجب أن يكون نوع المستند غير مخصص ليتم إنشاء ملفات الكود النموذجية في دليل التطبيق الخاص بك .
- بعد إضافة الحقول، انقر على حفظ. ستظهر لك زر الذهاب إلى قائمة المقالات.
- لرؤية زر جديد وإنشاء سجلاتك الأولى، قد تحتاج إلى مسح ذاكرة التخزين المؤقت لـ Desk: انقر على قائمة الإعدادات في شريط التنقل واختر إعادة تحميل.
ماذا يحدث عند إنشاء نوع المستند؟
عند حفظ نوع المستند، يقوم Frappe تلقائيًا بعدة أمور رئيسية :
| المكون الذي تم إنشاؤه | الوصف |
|---|---|
| جدول قاعدة البيانات | ينشئ جدولاً في قاعدة البيانات باسم tabArticle. يحول أسماء الحقول التي أدخلتها (مثل Article Name) إلى تنسيق snake_case تلقائيًا (مثل article_name). |
| واجهات Desk | ينشئ عرض القائمة (List View) لعرض السجلات، وعرض النموذج (Form View) لإنشاء أو تعديل المستندات. |
| تخطيط النموذج | يتبع تخطيط الحقول في النموذج الترتيب الذي حددته في جدول الحقول. |
| التعليمات البرمجية النموذجية | ينشئ مجموعة من الملفات في دليل تطبيقك (library_management) مما يسمح لك بإضافة منطق مخصص :
|
يمكنك رؤية هذه الملفات الجديدة باستخدام أمر git status داخل دليل تطبيقك.
التخصيص بعد الإنشاء
تذكر أن التغييرات التي أجريتها لإنشاء نوع المستند يتم حفظها في كود التطبيق نفسه لأنك في وضع المطور. بالنسبة للتخصيصات المحددة لكل موقع (مثل إضافة حقول مخصصة لموقع معين دون لمس الكود الأساسي)، يمكنك استخدام أدوات مثل تخصيص النموذج (Customize Form) أو الحقول المخصصة (Custom Field) .
أتمنى أن يكون هذا الدليل مفيدًا. هل تريد مساعدة في ترجمة الأقسام التالية من البرنامج التعليمي، أو لديك أسئلة محددة حول الخطوات؟