如何在Yii2中仅显示表的某些元素?
我想在“reserva”表的id_alumno等于id_alumno登录时显示此列表的行 --餐桌预订 --GridView保留\索引如何在Yii2中仅显示表的某些元素?,yii2,yii2-basic-app,Yii2,Yii2 Basic App,我想在“reserva”表的id_alumno等于id_alumno登录时显示此列表的行 --餐桌预订 --GridView保留\索引 <?= GridView::widget([ 'dataProvider' => $dataProvider, 'filterModel' => $searchModel, 'columns' => [ 'fecha', //['class' => 'yii\grid\Acti
<?= GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'columns' => [
'fecha',
//['class' => 'yii\grid\ActionColumn'],
],
]); ?>
将其添加到“ReservaSearch.php”中的“search”函数中的其他“andFilterWhere”后面
您可以在Gridview小部件中添加查询您是想说您想在Gridview中显示表中id等于登录用户id的行吗?是的,这是一个好问题,您是想根据用户是否经过身份验证来显示列吗?是的,仅此而已:(您不需要任何异常,例如,当用户是管理员或具有特殊权限的用户可以访问所有记录时?管理员可以查看所有“保留”,但配置文件“alumno”只能查看其“保留”这是错误的,不会向站点管理员显示所有记录,这就像是在
searchModel
中进行硬编码,这不是一个好方法。我尝试了这一方法,但无法正常工作。“dataProvider'=>$dataProvider->query->where('id\u reserva'==Yii::$app->user->identity->id\u alumno),
$query->andFilterWhere(['id_alumno' => \Yii::$app->user->id]);
$dataProvider->query->where('reserva == id_alumno ')