Добрый день, есть 3 таблицы:
elements - Список элементов
permission - список разрешений для элементов
per_tariffs - список разрешений для тарифов пользователей
Вот так выглядит схема:
В чем собственно проблема:
Я пытаюсь получить список элементов вместе с разрешениями.
Вначале у меня есть только elements, и я пытаюсьс делать так:
получаю permission по elements.type, затем получаю per_tariffs по permission.id
Это все работает если вручную составлять sql запрос, но у меня active record, и хочется разобраться как с ним вытворять подобные вещи, сейчас я пытаюсь сделать так:
В моделе Elements:
public function getPermission(){
return $this->hasMany(Permissions::className(), ['type' => 'type'])
->viaTable('per_tariffs', ['per_id' => 'id']);
}
В контролере :
$model = Elements::find()
->with('permission')
->asArray()
->all();
.. debug($model);
Но permission пустое в модели выходит.
Подскажите пожалуйста, как это правильно сделать? чувствую вот просто как баран уперся и не туда смотрю, как-то это должно просто решаться(