Yii. Каким образом лучше сделать insert через одну форму сразу в несколько таблиц в БД?
Всем доброго времени суток.
Ситуация такая.
Есть 3 таблицы: сущности товаров (id, name), варианты товаров(id, product_id, size, color, count), изображения (id, product_id, image_full_path). Это примерный список, полей в каждой таблице чуть больше, но для демонстрации думаю этого достаточно. Последние 2 таблицы связаны с первой по полю "product_id" и в моделях прописаны, соответственно, все необходимые relations. Они проверены, при ручном добавлении в MySQL выводы(всякие view) работают прекрасно. Проблема в вводе =).
Возник вопрос, как наиболее правильно со стороны Yii добавить все эти поля одновременно за одно нажатие кнопки "сохранить" в одной форме, чтобы не городить велосипеды или костыли.
Я не прошу расписывать полностью весь код и все делать за меня. Важен сам принцип или мб. полезную ссылку или, если есть, пример.
Сам я вроде как склоняюсь к способу при успешном добавлении сущности товара получить ее id и дальше разбирать данные POST других групп полей формы (варианты товара и изображения товара). Все в 1 экшен с названием "add". Не знаю, правильно ли это или нет. Помогите разобраться. Заранее спасибо всем.
нет, можешь логику на if построить, если вторая таблица $model2->save() - false, то делаешь удаление только что добавленную запись в первую таблицу, потом проверяешь $model3->save(), если false удаляешь записи из табл 1 и 2