Как организовать обработку нескольких моделей Yii2 в одной форме?
Доброго. Есть форма, на которой есть Пользователь, Компания и Множество Контактов компании. Надо все заполнить разом (если компания есть, то привязать к уже существующей). Вопрос такого плана, как лучше логически это построить? Валидация и прочее.
Допустим заполнили пользователя, если нажали галочку (или вписали название компании) то валидировать модель компании уже не надо. Если же нет, то валидируем компанию и валидируем множество моделей Контакт.
Мне бы схему работы всего этого, код я сам напишу. Просто я не совсем понимаю, как средствами юи сделать так, что бы красиво все было.
а зачем валидировать новую компанию, если мы уже заполнили существующую?
при валидации компании будут поля, обязательные для заполнения. если мы их не заполним (а нам это не надо, мы ведь выбрали существующую) мы получим ошибки и как следствие - не сохранение всей формы.
Михаил, если компания не будет указана в правилах валидации, то Вы не сможете записать её в таблицу. YII просто пропустит это поле.
Не обязательно указывать, что поле обязательно к заполнению, достаточно указать, что это строка, например.
В любом случае, все данные, которые пишутся в базу подлежат проверке.
slo_nik, вы меня не совсем правильно поняли.
если мы в выпадающем списке у модели User выбираем компанию, то модель Company нам не надо валидировать и сохранять, соответственно заполнять ее тоже не нужно