الانتقال إلى المحتوى الرئيسي

ما تغطيه طبقة التكوين

طبقة الإعدادات (config layer) لتطبيق Twenty هي ما يصف التطبيق للمنصة — هويته، والأذونات التي يمتلكها، والكود الذي يعمل أثناء التثبيت أو الترقية. هذه التصريحات لا تضيف أشكال بيانات جديدة أو سلوكًا وقت التشغيل؛ بل تخبر Twenty من هو التطبيق وكيفية إعداده.

في هذا القسم

card-page-application-config
تهيئة التطبيق
defineApplication - الهوية، الدور الافتراضي، المتغيرات، البيانات الوصفية للتسوق.
card-page-roles
الأدوار والأذونات
defineRole — حدِّد ما يمكن لوظائف منطق تطبيقك قراءته وكتابته.
card-page-install-hooks
تثبيت Hooks
definePreinstallLogicFunction', definePostInstallLogicFunction’, و`defineuninstallLogicFunction’ - النسخ الاحتياطي للبيانات، الافتراضي، التحقق من التحديثات، تنظيف على الإزالة.

كيفية ترابط الأجزاء

  • التطبيق (Application) هو نقطة الدخول. يحتوي كل تطبيق على استدعاء واحد فقط defineApplication()، ويشير إلى دور (Role) واحد باعتباره الدور الافتراضي له.
  • يتحكم الدور في ما يمكن لوظائف منطق التطبيق ومكوّنات الواجهة الأمامية قراءته وكتابته. اتبع مبدأ أقل امتياز ممكن: امنح فقط الصلاحيات التي يحتاجها الكود فعليًا.
  • تعمل خطافات التثبيت أثناء التثبيت أو الترقية — ما قبل التثبيت قبل ترحيل البيانات الوصفية (كي تتمكن من رفض ترقية محفوفة بالمخاطر)، وما بعد التثبيت بعد الترحيل (كي تتمكن من تهيئة بيانات افتراضية وفق المخطط الجديد). يعمل خطاف إزالة التثبيت مباشرة قبل إزالة التطبيق، بحيث يمكنه تنظيف الموارد الخارجية بينما تظل بيانات التطبيق قابلة للقراءة.
تشارك خطافات التثبيت وقت تشغيل وظيفة المنطق — نفس توقيع المعالج (handler signature)، ونفس متغيرات البيئة، ونفس عميل واجهة برمجة التطبيقات (typed API client) — لكنها تُصرّح باستخدام دوال تعريف خاصة بها وتوجد خارج نموذج المشغلات العادي (HTTP، و cron، وأحداث قاعدة البيانات).