kontroler mam:Yii2 wybrać tylko kilka kolumn z pokrewnego modelu
public function actionGetItems()
{
$model = new \app\models\WarehouseItems;
$items = $model->find()->with(['user'])->asArray()->all();
return $items;
}
W modelu WarehouseItem mam standardową deklarację (utworzony przez GII) Powiązania:
public function getUser()
{
return $this->hasOne('\dektrium\user\models\User', ['user_id' => 'user_id']);
}
Jak mogę określić, które kolumny dane otrzymuję od relacji "użytkownik"? Obecnie otrzymuję wszystkie kolumny, które nie są dobre, ponieważ dane są wysyłane do Angular w formacie JSON. W tej chwili muszę pętli koryta $ przedmiotów i filer wszystkie kolumny nie chcę wysłać.
Otrzymuję ten błąd: Uwaga PHP - yii \ base \ ErrorException Niezdefiniowany indeks: user_id Co to może być? – Ljudotina
Oh, ok, mam to .... muszę również wybrać kolumnę "user_id" z powiązanej tabeli. – Ljudotina
Aby to działało, musisz również wybrać pole powiązania z powiązaną klasą. W tym przypadku byłby to "user_id" z modelu "User": '$ query-> select ('user_id, col1, col2');'. –