Хочу сделать вывод записей из таблицы в инпуты формы, и заполнять можно только выбранные инпоинты для каждого юзера. Использую hasMany для этих целей
вот вид:
Код: Выделить всё
<?foreach ($items as $item):?>
<h2><?=$item->name?></h2>
<?foreach ($item->children as $_item):?>
<h3><?=$_item->name?></h3>
<?foreach ($_item->children as $children):?>
<?= $form->field($children, 'cost[]')->label($children->name) ?>
<?endforeach;?>
<?endforeach;?>
<?endforeach;?>
Код: Выделить всё
Class Price extends ActiveRecord
{
public static function tableName()
{
return 'price';
}
public function getChildren()
{
return $this->hasMany(self::className(), ['parent_id' => 'id']);
}
public function getCost()
{
return $this->hasMany(UserPrice::className(), ['price_id' => 'price_id'])->viaTable(UserPrice::tableName(), ['user_id' => Yii::$app->user->id]);
}
}
Модель UserPrice имеет поля: price_id, user_id, cost