controller che ho:Yii2 selezionare solo alcune colonne dal modello relativo
public function actionGetItems()
{
$model = new \app\models\WarehouseItems;
$items = $model->find()->with(['user'])->asArray()->all();
return $items;
}
Nel modello WarehouseItem ho standard di dichiarazione (creato da GII) relazione:
public function getUser()
{
return $this->hasOne('\dektrium\user\models\User', ['user_id' => 'user_id']);
}
come posso controllare quale colonna i dati ottengo dalla relazione "utente"? Attualmente ottengo tutte le colonne che non sono buone in quanto i dati vengono inviati ad Angular in formato JSON. In questo momento devo fare un ciclo con gli articoli $ ed estrarre tutte le colonne che non voglio inviare.
ottengo questo errore: PHP Notice - Yii \ base \ ErrorException Undefined index: user_id Cosa potrebbe essere? – Ljudotina
Oh, ok ho capito .... devo selezionare anche la colonna "user_id" dalla tabella correlata. – Ljudotina
Per funzionare è necessario anche selezionare il campo di collegamento della classe correlata. In questo caso sarebbe 'user_id' del modello' User': '$ query-> select ('user_id, col1, col2');'. –