Как сделать грамотно CRUD для двух таблиц связанных таблиц, если есть вероятность отсутствия данных во второй?
Есть 2 таблицы:
Таблица service
Отвечает за хранение услуг.
Поля: id, name, cost, price, min, max.
Таблица service_api
Некоторые услуги могут быть иметь настройки API, некоторые нет(обрабатываются вручную).
Поля: service_id(&service=>id), order_link, check_link
Вопрос состоит в том, как грамотно оформить вывод и редактирование данных для этих двух таблиц, при условии, что:
Не каждая услуга имеет свои настройки API, но каждая настройки API имеет свою услугу.
На данный момент, у меня проблема конкретно с созданием и сохранением, то есть как это реализовать без JS.
В плане сохранения есть идея: сделать форму ServiceForm, которая будет в себе иметь свойства и таблицы Service, и ServiceApi.
И если при создании услуг пользователь не заполнил поля таблицы service_api, а именно: order_link, check_link - проверять это и дергать метод, который будет сохранять лишь данные в таблицу service. Но тут тогда вопрос при редактировании: как выводить данные на форму? Можно, конечно, сделать проверку на Controller'e имеет ли услуга настройки API и если нет - выводить одну форму, если есть - другую. Но этот способ кажется слишком громоздким и не самым верным.