Форма для двух моделей

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
Аватара пользователя
Vi_ru_S
Сообщения: 61
Зарегистрирован: 2018.08.14, 07:39
Откуда: Владивосток
Контактная информация:

Форма для двух моделей

Сообщение Vi_ru_S »

Всем привет есть две модели Model1 и Model2
Структура Model1
- model1_data1
- model1_data2
- model1_data3
- name_id
Структура Model2
- name
- phone
- email
Есть необходимость заполнять эти модели из одной формы, прочитал как это делать https://yiiframework.com.ua/ru/doc/guid ... e-models/ . Вроде бы все понятно, но в model1 мне надо получить id model2 в добавок хотел сделать так что бы значения name получать из списка select2 и если бы значения не было в бд то происходило бы создание новых данных если было бы то просто подтягивало их и сохраняло значения id из Model2 в Model1 типа вроде этого

Код: Выделить всё


if (!$from = \app\models\Model2::findOne($model1->name_id)) {
            $from = new \app\models\Model2();
            $from->name = $model->name_id;
        }
Есть ли у кого примеры подобных реализаций?
В действительности все иначе чем на самом деле. Антуан де Сент Экзюпери
yiiliveext
Сообщения: 910
Зарегистрирован: 2019.08.13, 01:49

Re: Форма для двух моделей

Сообщение yiiliveext »

Внятно сформулированная задача - уже половина ответа. В вашем же случае о задаче можно только догадываться.
Аватара пользователя
Vi_ru_S
Сообщения: 61
Зарегистрирован: 2018.08.14, 07:39
Откуда: Владивосток
Контактная информация:

Re: Форма для двух моделей

Сообщение Vi_ru_S »

yiiliveext писал(а): 2019.11.27, 16:12 Внятно сформулированная задача - уже половина ответа. В вашем же случае о задаче можно только догадываться.
Хочу во view где отображается Model1
* @property int $id
* @property int $to_id
* @property int $from_id
* @property int|null $where_id
* @property int|null $proxy_id
*
* @property CatCustomer $from
* @property CatToWhom $to
* @property CatWhere $where
* @property CatCustomer $proxy
заполнять CatCustomer
* @property int $id
* @property string $name
* @property string|null $series
* @property string|null $number
* @property string|null $issued_by
* @property string|null $address
*
* @property StaLandTenure[] $staLandTenures
* @property StaLandTenure[] $staLandTenures0
В действительности все иначе чем на самом деле. Антуан де Сент Экзюпери
Ответить