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

نظرة عامة

يحتاج تطبيقنا إلى عنصرين مخصصين: قوالب وثيقة (ما يجب كتابته) و وثائق (النتيجة المنشأة). دعونا نعرفهم. سكاف كل ملف كيان مع CLI - يخلق مجلد UUID صالح و الصحيح لك:
نعرض أدناه الملفات المكتملة.
كل *_UNIVERSAL_IDENTIFIER يعيش باستمرار في src/constants/universal-Identiers.ts ويتم استيراده حيثما استخدم. تتجاهل المقتطفات أدناه عمليات الاستيراد تلك للاختصار — احتفظ بها في ملفاتك الخاصة.

عنصر القالب

يحتوي القالب على name، و body يتضمن {{placeholders}}، و target يحدد ما إذا كان مكتوبًا لشخص أو لشركة. ‘body’ هو حقل ‘RICH_TEXT’ لذا فإن عشرون يمنحه محرر نص ثري كامل.
يجب أن تكون قيم خيار SELECT بصيغة UPPER_CASE (PERSON وليس person)، وتكون قيمة defaultValue محاطة بعلامات اقتباس إضافية: `'PERSON'`. إن label هو ما يراه المستخدمون.

كائن المستند

الوثيقة التي تم إنشاؤها تخزن “المحتوى” و “الحالة”. قم بتعريفه بنفس الطريقة، مع اختيار ‘الحالة’ من ‘DRAFT / 'GENERATED. الملف الكامل: document.object.ts.

ربطهم بعلاقة

يجب أن يشير كل مستند مرة أخرى إلى النموذج الذي أتى منه. العلاقات هي ثنائية الاتجاه - أنت تحدد كلا الجانبين، كل منهما في ملف الحقل الخاص به.
الجانب الآخر (template-documents-relation.field.ts) هو حقل RelationType.ONE_TO_MANY يسمى documents الذي يشير إلى الاتجاه المعاكس. انظر Relations للاطلاع على النمط الكامل.

مشاهدته في العشرين

أثناء تشغيل twenty app dev، افتح الإعدادات → نموذج البيانات. يظهر كلا العنصرين ، وسم مع التطبيق الخاص بك.
إعدادات نموذج البيانات التي تظهر قوالب المستندات والمستندات

كلا العنصرين المخصصين، مملوكين لتطبيق مولد المستندات.

أنشئ قالبًا واحدًا للاختبار — سمّه عرض مبيعات، واضبط الهدف على شخص، والصق محتوى يتضمن بعض العناصر النائبة:
سجل قالب مقترح المبيعات مع الهيئة النائبة

سجل قالب. وتحافظ هذه الهيئة على الجهات الناقلة لها إلى حين إصدار وثيقة.

بعد هذه الخطوة: لديك كائنات ‘documentTemplate’ و ‘document’، مرتبطة بـ علاقة، و قالب واحد لتوليد منها. وبعد ذلك، المنطق الذي يعبئه.
card-page-tutorial-documents
التالي: إنشاء المستندات →
كتابة الدالة المنطقية التي تملأ القالب.