Filament 3 — как вывести связь многие ко многим в модальном окне

PHP

Создание системы чекбоксов для связи сущностей «многие ко многим» в Laravel 11 с использованием библиотеки Filament 3 — это отличный способ управления взаимосвязями между данными. В этой статье мы рассмотрим, как это можно реализовать на примере трех сущностей: КомнатаСотрудник и Техника.

Filament 3 - как вывести связь многие ко многим в модальном окне

Структура базы данных

Для начала, давайте определим структуру базы данных:

  1. Комнаты (rooms)
    • id
    • name
  2. Сотрудники (employees)
    • id
    • name
    • room_id (внешний ключ на таблицу rooms)
  3. Техника (equipment)
    • id
    • name
  4. Сотрудник-Техника (связующая таблица) (employee_equipment)
    • employee_id (внешний ключ на таблицу employees)
    • equipment_id (внешний ключ на таблицу equipment)

Создадим файлы для моделей и миграций с помощью команды:

  1. Модель Room:
  1. Модель Employee:
  1. Модель Equipment:

Создайте миграции для каждой таблицы:

1. Миграция для таблицы rooms

2. Миграция для таблицы employees:

3. Миграция для таблицы equipment:

4. Миграция для таблицы employee_equipment:

Выполним миграцию:

Ресурс Room

Создадим ресурс и добавим в него наш Action

Теперь в блок action можно добавить новое действие

Добавить комментарий