Yii2: как объединить модели? - PullRequest
1 голос
/ 25 апреля 2019

У меня есть модель с именем MovementsSearch.php с типичной функцией search($params), которая генерирует провайдер данных для actionIndex() функции MovementsController.php .

поиск ($ params) в MovementsSearch.php:

public function search($params)
{
    $query = Movements::find();

    $dataProvider = new ActiveDataProvider([
        'query' => $query,
    ]);

    $this->load($params);

    if (!$this->validate()) {
        return $dataProvider;
    }

    $query->andFilterWhere([
        'id_movement' => $this->id_movement,
    ]);

    return $dataProvider;
}

actionIndex () в MovementsController.php:

public function actionIndex()
{
    $searchModel = new MovementsSearch();
    $dataProvider = $searchModel->search(Yii::$app->request->queryParams);

    return $this->render('index', [
        'searchModel' => $searchModel,
        'dataProvider' => $dataProvider,
    ]);
}

Мне нужно присоединиться ко всем этим столам, но я не могу этого сделать. Возможно, можно присоединиться к поставщику данных каждой модели. В результате получится большая таблица с большим количеством столбцов, но я знаю, как выбрать нужные столбцы.

administrators_offices и products_offices - отношения «многие ко многим».

Database diagram with relationships

...