Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -39,12 +39,16 @@ description: اربط السجلات عبر كائنات مختلفة باستخ

**مثال:** يمكن ربط العديد من الأشخاص بالعديد من المشاريع، والعكس صحيح.

<Warning>
**متعدد-إلى-متعدد غير مدعوم بعد.**
تستخدم العلاقات من نوع متعدد إلى متعدد نمط **كائن ربط**: كائن وسيط يربط بين الجانبين. باستخدام ميزة علاقة الربط، تعرض Twenty السجلات المرتبطة النهائية مباشرةً، مع إخفاء الكائن الوسيط من واجهة المستخدم.

<img src="/images/user-guide/fields/junction-relation-diagram.png" style={{width:'100%'}} />

هذا النوع من العلاقات مُخطّط للنصف الأول من عام 2026. كحل بديل، أنشئ كائنًا وسيطًا "junction" (مثال: "Project Assignments") لديه علاقات من نوع متعدد-إلى-واحد مع كلا الكائنين.
<Warning>
**ميزة المختبر**: يجب تمكين علاقات الربط في **الإعدادات → التحديثات → المختبر** قبل الاستخدام.
</Warning>

راجع [كيفية إنشاء علاقات متعدد-إلى-متعدد](/l/ar/user-guide/data-model/how-tos/create-many-to-many-relations) للحصول على دليل كامل خطوة بخطوة.

## إنشاء حقل علاقة

1. اذهب إلى **الإعدادات → نموذج البيانات**
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,180 @@
---
title: إنشاء علاقات متعدد-إلى-متعدد
description: اربط السجلات حيث يمكن ربط عناصر كثيرة على كلا الجانبين معًا باستخدام كائنات الربط.
---

تتيح علاقات متعدد-إلى-متعدد ربط سجلات متعددة على كلا الجانبين. على سبيل المثال: يمكن للعديد من الأشخاص العمل على العديد من المشاريع، ويمكن لكل مشروع أن يضم العديد من الأشخاص.

<Warning>
**ميزة المختبر**: علاقات الربط متاحة حاليًا في المختبر. فعِّلها في **الإعدادات → التحديثات → المختبر** قبل اتباع هذا الدليل.
</Warning>

<Note>
تتطلب هذه الميزة أيضًا تفعيل **الوضع المتقدم** (زر التبديل في أسفل يمين صفحة الإعدادات).
</Note>

## متى نستخدم علاقات متعدد-إلى-متعدد

استخدم علاقات متعدد-إلى-متعدد عندما يمكن لكل جانب من العلاقة أن يحتوي على عدة ارتباطات:

| العلاقة | مثال |
| ------------------ | --------------------------------------------------------------------- |
| الأشخاص ↔ المشاريع | قد يعمل الشخص على عدة مشاريع؛ ويضم المشروع عدة أعضاء فريق |
| الشركات ↔ الوسوم | يمكن أن تحتوي الشركة على عدة وسوم؛ ويمكن أن ينطبق الوسم على عدة شركات |
| المنتجات ↔ الطلبات | يمكن أن يوجد المنتج في عدة طلبات؛ ويحتوي الطلب على عدة منتجات |

## كيف يعمل

تستخدم Twenty نمط **كائن الربط** لعلاقات متعدد-إلى-متعدد. يوضع كائن الربط بين كائنين ويحتفظ بالارتباطات:

```
People ←→ Project Assignments ←→ Projects
```

يحتوي كائن **تعيينات المشروع** (كائن ربط) على:

* علاقة مع الأشخاص (متعدد-إلى-واحد)
* علاقة مع المشاريع (متعدد-إلى-واحد)

عند تفعيل مفتاح علاقة الربط، تعرض Twenty السجلات المرتبطة مباشرةً بدلًا من إظهار سجلات كائن الربط الوسيطة.

## المتطلبات الأساسية

1. **تفعيل علاقات الربط في المختبر**: انتقل إلى **الإعدادات → التحديثات → المختبر** وفعِّل **علاقات الربط**
2. **فعِّل الوضع المتقدم**: شغِّل **الوضع المتقدم** من أسفل يمين الشريط الجانبي لصفحة الإعدادات
3. خطِّط نموذج البيانات الخاص بك:
* ما الكائنان اللذان ستربطهما؟
* ما الاسم الذي ينبغي أن يُطلق على كائن الربط؟

## الخطوة 1: إنشاء كائن الربط

أولًا، أنشئ الكائن الوسيط الذي سيحتفظ بالارتباطات.

1. اذهب إلى **الإعدادات → نموذج البيانات**
2. انقر **+ كائن جديد**
3. سمِّه تسمية وصفية (مثلًا: "تعيين مشروع"، "عضو فريق"، "طلب منتج")
4. انقر على **حفظ**

<Tip>
**اتفاقية التسمية**: استخدم اسمًا يصف العلاقة، مثل "تعيين مشروع" أو "عضوية الفريق". هذا يجعل نموذج البيانات أسهل في الفهم.
</Tip>

## الخطوة 2: إنشاء علاقات من كائن الربط

أضِف حقول علاقة من كائن الربط إلى كلا الكائنين اللذين تريد ربطهما.

### العلاقة الأولى (كائن الربط → الكائن A)

1. حدِّد كائن الربط في **الإعدادات → نموذج البيانات**
2. انقر **+ إضافة حقل**
3. اختر **العلاقة** كنوع الحقل
4. اختر الكائن الأول (مثلًا، "الأشخاص")
5. عيِّن نوع العلاقة إلى **متعدد-إلى-واحد** (يمكن لعديد من التعيينات الارتباط بشخص واحد)
6. قم بتسمية الحقول:
* الحقل على كائن الربط: مثلًا، "شخص"
* الحقل على الأشخاص: مثلًا، "تعيينات المشروع"
7. انقر على **حفظ**

### العلاقة الثانية (كائن الربط → الكائن B)

1. وأنت ما زلت في كائن الربط، انقر **+ إضافة حقل**
2. اختر **العلاقة** كنوع الحقل
3. اختر الكائن الثاني (مثلًا، "المشاريع")
4. عيِّن نوع العلاقة إلى **متعدد-إلى-واحد**
5. قم بتسمية الحقول:
* الحقل على كائن الربط: مثلًا، "مشروع"
* الحقل على المشاريع: مثلًا، "أعضاء الفريق"
6. انقر على **حفظ**

## الخطوة 3: ضبط عرض علاقة الربط

قم الآن بضبط كائنات المصدر لعرض السجلات المرتبطة مباشرةً، مع تجاوز كائن الربط الوسيط.

1. اذهب إلى **الإعدادات → نموذج البيانات**
2. اختر الكائن الأول (مثلًا، "الأشخاص")
3. اعثر على حقل العلاقة الذي يشير إلى كائن الربط (مثلًا، "تعيينات المشروع")
4. انقر لتحرير الحقل
5. فعّل **"هذه علاقة بكائن ربط"**
6. حدِّد **العلاقة الهدف** (مثلًا، "مشروع" — الحقل على كائن الربط الذي يشير إلى الجانب الآخر)
7. انقر على **حفظ**

{/* TODO: Add image
<img src="/images/user-guide/fields/junction-relation-toggle.png" style={{width:'100%'}}/>
*/}

كرِّر على الكائن الآخر:

1. اختر "المشاريع" في نموذج البيانات
2. حرِّر حقل العلاقة "أعضاء الفريق"
3. فعّل مفتاح الربط
4. حدِّد "شخص" كالعلاقة الهدف
5. حفظ

## النتيجة

بعد التكوين:

* في سجل **شخص**، يعرض حقل "تعيينات المشروع" **المشاريع** مباشرةً (وليس سجلات التعيين)
* في سجل **مشروع**، يعرض حقل "أعضاء الفريق" **الأشخاص** مباشرةً

لا يزال كائن الربط موجودًا ويخزّن الارتباطات، لكن واجهة المستخدم تقدّم عرضًا أوضح لعلاقات متعدد-إلى-متعدد.

## مثال: الأشخاص ↔ المشاريع

إليك شرحًا كاملًا خطوة بخطوة:

### إنشاء كائن الربط

* الاسم: **تعيين مشروع**
* الوصف: "يربط الأشخاص بالمشاريع التي يعملون عليها"

### إضافة علاقات

1. **تعيين مشروع → الأشخاص**
* النوع: متعدد-إلى-واحد
* الحقل على التعيين: "شخص"
* الحقل على الأشخاص: "تعيينات المشروع"

2. **تعيين مشروع → المشاريع**
* النوع: متعدد-إلى-واحد
* الحقل على التعيين: "مشروع"
* الحقل على المشاريع: "أعضاء الفريق"

### ضبط عرض علاقة الربط

1. على كائن **الأشخاص**:
* حرِّر حقل "تعيينات المشروع"
* فعّل مفتاح الربط
* الهدف: "مشروع"

2. على كائن **المشاريع**:
* حرِّر حقل "أعضاء الفريق"
* فعّل مفتاح الربط
* الهدف: "شخص"

### استخدمه

* افتح سجل شخص → سترى مشاريعه مباشرةً
* افتح سجل مشروع → سترى أعضاء الفريق مباشرةً
* أنشئ ارتباطات جديدة من أي جانب

## إضافة بيانات إضافية إلى الارتباطات

نظرًا لأن كائن الربط كائن حقيقي، يمكنك إضافة حقول مخصصة لتخزين معلومات حول العلاقة:

* **الدور**: "مطوّر"، "مصمّم"، "مدير"
* **تاريخ البدء**: متى انضمّوا إلى المشروع
* **الساعات المخصّصة**: عدد الساعات الأسبوعية على هذا المشروع

للوصول إلى هذه البيانات، انتقل إلى كائن الربط مباشرةً أو استعلم عنها عبر واجهة API.

## القيود

* **استيراد/تصدير CSV**: لا يُدعم استيراد علاقات متعدد-إلى-متعدد مباشرةً. بدلًا من ذلك، استورد السجلات إلى كائن الربط.
* **عوامل التصفية**: قد تكون خيارات التصفية حسب علاقات متعدد-إلى-متعدد محدودة.

## ذات صلة

* [حقول العلاقات](/l/ar/user-guide/data-model/capabilities/relation-fields) — شرح أنواع العلاقات
* [إنشاء كائنات مخصصة](/l/ar/user-guide/data-model/how-tos/create-custom-objects) — كيفية إنشاء الكائنات
* [إنشاء حقول العلاقات](/l/ar/user-guide/data-model/how-tos/create-relation-fields) — إعداد العلاقات الأساسي
Original file line number Diff line number Diff line change
Expand Up @@ -39,12 +39,16 @@ Mnoho záznamů v Objektu A může být propojeno s mnoha záznamy v Objektu B.

**Příklad:** Mnoho lidí může být propojeno s mnoha projekty a naopak.

<Warning>
**Mnoho k mnoha zatím není podporováno.**
Vztahy typu mnoho-na-mnoho používají vzor zvaný **spojovací objekt**: zprostředkující objekt, který propojuje obě strany. S funkcí spojovacího vztahu zobrazuje Twenty přímo výsledné propojené záznamy a zprostředkující objekt v UI skrývá.

<img src="/images/user-guide/fields/junction-relation-diagram.png" style={{width:'100%'}} />

Tento typ relace je plánován na 1. pololetí 2026. Jako dočasné řešení vytvořte prostřední "spojovací" objekt (např. "Project Assignments"), který má relace typu mnoho k jednomu k oběma objektům.
<Warning>
**Experimentální funkce**: Vztahy přes spojovací objekt je před použitím nutné povolit v **Settings → Updates → Lab**.
</Warning>

Podívejte se na [Jak vytvořit vztahy typu mnoho k mnoha](/l/cs/user-guide/data-model/how-tos/create-many-to-many-relations) pro úplný návod krok za krokem.

## Vytvoření relačního pole

1. Přejděte do **Nastavení → Datový model**
Expand Down
Loading
Loading