Когда я с нетерпением загружаю простые отношения Eloquent, я могу ограничить столбцы, полученные с использованием следующего синтаксиса:
MyModel::with(myRelation:id,col_2,col_3);
Когда я хочу ограничить членов отношений, я делаю это:
MyModel::with(['myRelation' => function ($query) {
$query->where([
['field_1', 'a_value'],
['field_2', 'b_value']
]);
}]);
Но это загружает все столбцы связанных моделей. Я попытался заменить ключ myRelation
на полный синтаксис myRelation:id,col_2,col_3
, но он выдает ошибку, которая говорит, что имя отношения не найдено.
Я также попытался добавить следующие методы к $query
:
->select('id', 'col_2', 'col_3')
или
->addSelect('id', 'col_2', 'col_3')
или
->get('id', 'col_2', 'col_3')
Ни один из них не был успешным.