# Як створити зв'язок між таблицями в Custom Data?

Зв'язок між таблицями дозволяє вибирати дані з однієї таблиці в іншій. Це корисно, коли потрібно створити відношення між різними сутностями (наприклад, завдання та пріоритети, товари та категорії).

## Коли знадобиться

- Потрібно вибирати значення з однієї таблиці при створенні запису в іншій.
- Треба створити відношення "один до багатьох" між таблицями.
- Потрібно організувати структуровані дані з посиланнями між таблицями.

## Що важливо знати

- **Зв'язок (ASSOCIATION)** — тип поля, який дозволяє створювати зв'язки між різними моделями даних.
- Тип зв'язку "один до багатьох" (one-to-many) означає, що один запис з однієї таблиці може бути пов'язаний з багатьма записами в іншій.
- При редагуванні запису у випадаючому списку будуть доступні значення з пов'язаної таблиці.
- Поле, яке відображатиметься після зв'язку, вибирається з пов'язаної моделі.

## Перед початком

- [x] Ви увійшли в систему з правами інтегратора або адміністратора.
- [x] У системі є дві створені моделі Custom Data (та, в якій створюється зв'язок, та та, з якої беруться дані).
- [x] Ви перейшли в модуль `Custom Data` через `Меню -> Custom Data`.

## Покрокова інструкція

1. У модулі `Custom Data` перейдіть до вкладки **"Створити/Оновити"**.
2. Відкрийте модель, в якій потрібно зробити вибір з іншої таблиці (наприклад, "Завдання").
3. Додайте нове поле або відредагуйте існуюче.
4. Оберіть тип поля **"Зв'язок"** (ASSOCIATION).
5. Налаштуйте параметри зв'язку:
   - **Тип зв'язку** — оберіть "один до багатьох" (one-to-many)
   - **Модель, з якої брати дані** — оберіть модель зі списку (наприклад, "Пріоритети")
   - **Поле, яке відображатиметься** — оберіть поле з пов'язаної моделі, яке буде показуватися у випадаючому списку (наприклад, "priority_name")
6. Збережіть зміни в моделі.

## Приклад використання

Якщо у вас є таблиця "Пріоритети" з полем "priority_id" та "priority_name", а в таблиці "Завдання" потрібно вибирати пріоритет:

1. Відкрийте модель "Завдання".
2. Додайте поле типу "Зв'язок".
3. Налаштуйте:
   - Модель: "Пріоритети"
   - Поле для відображення: "priority_name"
4. Збережіть модель.

Після цього при редагуванні запису в таблиці "Завдання" у випадаючому списку будуть доступні значення з таблиці "Пріоритети" (наприклад, "Високий", "Середній", "Низький").

## Що відбувається після

Після створення зв'язку поле типу "Зв'язок" відображається в моделі. При створенні або редагуванні запису у випадаючому списку будуть доступні значення з пов'язаної таблиці. Вибране значення зберігається як посилання на запис у пов'язаній таблиці.

## Як переконатися, що все вдалось

- Перевірте, що поле типу "Зв'язок" додано до моделі.
- Переконайтеся, що обрана правильна модель та поле для відображення.
- Створіть тестовий запис та перевірте, що у випадаючому списку відображаються значення з пов'язаної таблиці.
- Перевірте, що вибране значення зберігається коректно.

## Пов'язані матеріали

- [Створити модель](/uk/customdata/how-to/create-model.md)
- [Налаштувати тип поля](/uk/customdata/how-to/configure-field-type.md)
- [Додати поле до моделі](/uk/customdata/how-to/add-field-to-model.md)

