Я не знаю, что делать в этой ситуации.
У меня есть две модели:
Мне нужно дать пользователю выбор, как создавать эти модели:
Первые два сделаны, у меня есть отдельные контроллеры и методы. Но последний немного сложнее:
Когда пользователь нажимает «создать комментарий как задачу» (+ он заполняет форму свойствами задачи), серверная сторона должна создать новую задачу, а затем создать новый комментарий со ссылкой task_id на созданную задачу. Все, что я могу себе представить, это грязный повторный код.
Лучший способ, который я нашел:
Но я думаю, что это действительно плохая логика. Может быть, я должен использовать другую структуру таблицы для этого? Буду благодарен за любые советы здесь 🙂
Хорошо, я в конечном итоге с этим решением:
Создайте декоратор репозитория задач, этот декоратор добавляет создание комментариев. Так что, если в действии create задачи есть $ request-> comment_text, то мы создаем новую задачу через декоратор. Это лучшее решение, которое я могу создать, любые мысли и советы все еще ценятся 🙂
Других решений пока нет …