Начну не как все) у меня не три таблицы а две.
locations
locations_parents
Каждая запись в таблице может быть как родителем так и дочкой, для записей в той же таблице.
Соответственно может быть множество дочек и множество родителей. Поле main определяет главного родителя.
Собственно такая структура предусматривает бесконечное дерево.
В Yii2 через виджет дроплиста с мултьтиплаем в модель пытаюсь передать и сохранить список родителей редактируемого объекта.
Представление:
$form->field($model, 'parents_ids')->dropDownList($model->getListLocality(), ['class' => 'chzn-select', 'multiple' => true])
Модель:
class Locality extends ActiveRecord
{
const PUBLISH = 1;
const UNPUBLISHED = 0;
public $parents_ids = array();
...
public function beforeSave($insert)
{
if (parent::beforeSave($insert)) {
print_r($this->parents_ids);
die();
return true;
} else {
return false;
}
}
}
Но $this->parents_ids пустой. Очень не хочется применять что то типа \Yii::$app->request->post('parents_ids')