[Yii2] Utilizzo Arraydata provider

14 views
Skip to first unread message

Danilo Eusepi

unread,
Apr 7, 2016, 2:45:02 AM4/7/16
to yii-it
Salve a tutti, vi spiego la mia problematica:

con un'api remota leggo i dati dal db, le classi complete non riesco a passarle, quindi restituisco un'array:

        $dataProvider = new SqlDataProvider([
                       
'sql' => $sql,
                       
'pagination' => false,
                       
]);

        $elencofile_clt
= $dataProvider->getModels();
       
               
       
return $elencofile_clt;


Nella funziona client leggo il dato e lo do in pasto all'arraydataprovider:

$provider = new ArrayDataProvider([
               
'allModels' => $dataProvider,
               
'pagination' => [
                       
'pageSize' => 10,
               
],
               
]);


e poi passo il provider alla gridview:

                    echo GridView::widget([
                       
'dataProvider' => $provider,
                       
//'filterModel' => $searchModel,
                       
//'layout'=>"{sorter}\n{pager}\n{summary}\n{items}",
                       
'columns' => [
                               
[
                               
'class' => 'yii\grid\DataColumn',
                                       
'attribute' => 'Id',



Mi viene restituito quest'errore : Call to a member function getCount() on array.

Come posso ovviare a tutto ciò? 

Lorenzo Milesi

unread,
Apr 7, 2016, 3:40:07 AM4/7/16
to yii...@googlegroups.com
> Mi viene restituito quest'errore : Call to a member function getCount() on
> array.

Probabilmente passando il parametro 'count' all'ArrayDataProvider, così lui non chiama la getCount su un array
http://www.yiiframework.com/doc-2.0/yii-data-basedataprovider.html#$count-detail

--
Lorenzo Milesi - lorenzo...@yetopen.it

YetOpen S.r.l. - http://www.yetopen.it/
Reply all
Reply to author
Forward
0 new messages