我连接了 2 个表,如下所示:
$model = SalesEntry::find()
->joinWith('salesItems')
->all();
然后在视图中使用的数据提供程序,如下所示:
GridView::widget([
'dataProvider' => $model,
'columns' => [
'date', // sample field from first table to see if ok
],
]);
我有以下错误:
在非对象上调用成员函数 getCount()
我在这里做错了什么?
这是因为ActiveQuery
实例不是小部件所期望的DataProvider
。您需要将其包装在ActiveDataProvider
中才能正常工作:
GridView::widget([
'dataProvider' => new yiidataActiveDataProvider(['query' => $model]),
' columns' => [
'date', // sample field from first table to see if ok
],
]);
GridView 中的 DataProvider 应该是 yiidataDataProviderInterface
的实例
请参阅文档。