Php 基于currend DP模型的Yii2 ListView自定义数据属性
我需要为ListView元素设置自定义数据属性。例如,我尝试获取当前的数据提供程序模型id。但我仍然看到错误“htmlspecialchars()期望参数1是字符串,对象给定”。请检查我的代码,并停止我-我应该如何获得这个IDPhp 基于currend DP模型的Yii2 ListView自定义数据属性,php,listview,yii2,render,Php,Listview,Yii2,Render,我需要为ListView元素设置自定义数据属性。例如,我尝试获取当前的数据提供程序模型id。但我仍然看到错误“htmlspecialchars()期望参数1是字符串,对象给定”。请检查我的代码,并停止我-我应该如何获得这个ID <?= ListView::widget([ 'dataProvider' => $photoProvider, 'id' => 'photo-list', 'itemView'
<?= ListView::widget([
'dataProvider' => $photoProvider,
'id' => 'photo-list',
'itemView' => '_photoListItem',
'viewParams' => [
'fullView' => true,
],
'options' => [
'tag' => 'ul',
'class' => 'list-view'
],
'itemOptions' => [
'tag' => 'li',
'class' => 'item',
'data' =>[
'test' => function ($model, $key, $index, $widget) {
return Html::encode($model->id);
}
]
],
'pager' => [
'class' => ScrollPager::className(),
'container' => '#photo-list',
'item' => '.item',
'triggerText' => '<div class="btn more">Load More</div>',
'noneLeftText' => '',
'triggerOffset' => 2,
'negativeMargin' => 200
],
'layout' => "{items}\n{pager}",
]);
?>
根据以下说明,这在ListView中是不可能的: 这里不能使用函数。只允许使用静态值
或者,您可以在
\u photoListItem
视图文件的标记中提供这些属性 @БааПааааааааааааааааааа不,我知道,有类似的事情是这样运作的。在我看来,如果这些数据属性可以通过您尝试的方式填充,那将非常有用。您可以在github上对此进行功能请求。
'data' => [
'test' => function ($model, $key, $index, $widget) {
return Html::encode($model->id);
}
]