2017-08-09 139 views
0

我試圖搜索所需的信息,但找不到任何的信息。不知何故,我得到這個錯誤,我不知道我在哪裏犯了一個錯誤。Yii 2錯誤 - 試圖獲取非對象的屬性

這裏是我的行動:

public function actionFilter() 
{ 
    $filterParams = Yii::$app->request->get(); 
    unset($filterParams['r']); 

    $model = new Sale(); 
    $dataProvider = $model->filterParameters($filterParams); 

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

這是我的觀點:

'attribute' => 'sale_id', 
'width' => '14%', 
'value' => function (Sale $model) { 
    return $model->sale->client->getClientName(); 
} 
], 
[ 
    'attribute' => '', 
    'value' => function (Sale $model) { 
     return $model->sale->client->getClientSale(); 
    } 
], 

我得到的'value' return line錯誤。功能getClientName()client模型。有人能解釋我做錯了什麼嗎?謝謝你的幫助。

回答

1

顯然,沒有模型鏈接到您的主$model。你應該檢查它是否是通過設置:

return $model->debtor && $model->debtor->client ? $model->debtor->client->getFullName() : null; 

return $model->debtor && $model->debtor->user ? $model->debtor->user->getFullName() : null; 
+0

你的意思是說'linked'?你能評估你的解釋嗎? :/ – MKD

+1

這意味着:1)你的表中的外鍵是空的2)你的外鍵在相關表中沒有數據3)你在模型中的關係被錯誤地寫入 – Yupik

+0

呃..也許你可以解釋一下你的句子呢?我無法理解這一點。感謝您的時間 – MKD

相關問題